Commit Graph

791 Commits

Author SHA1 Message Date
Eduardo Bart c5674d10ba some refactoring 2012-06-21 20:58:18 -03:00
Henrique Santiago a7c17cec2e Save miniwindows states 2012-06-21 16:31:36 -03:00
Eduardo Bart 96c363d997 changes for otb compability 2012-06-21 14:54:20 -03:00
Eduardo Bart f3499efe83 Adjust fallen changes
* Restore old map load() used in minimap
* Change tabs to 4 spaces
* Add missing cmake file
2012-06-21 00:05:44 -03:00
otfallen d139c3738b map stuff 2012-06-21 04:31:29 +02:00
Eduardo Bart 9d5d400f7a Fix cmake issue 2012-06-20 04:13:19 -03:00
Henrique db4ced65eb Fix skin and locale at first run, adding new locale to combobox, exit function double call, enable sound option 2012-06-20 03:31:52 -03:00
Eduardo Bart eb457bf9cd Fix error when exiting in win32 2012-06-20 02:41:00 -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 9e72860178 fix compile issue 2012-06-19 11:18:22 -03:00
Henrique Santiago 4bdcae2f8b improvements to skins 2012-06-19 05:46:49 -03:00
Eduardo Bart 5a048eb7ea Minor graphics fixes 2012-06-18 20:58:56 -03:00
Eduardo Bart cb58d2dcfa Compile fixes for mingw32 2012-06-18 13:05:16 -03:00
Eduardo Bart dff1564395 Fix bad usage of glDrawArrays that could lead to crash in some specific cases 2012-06-18 11:15:44 -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 f650b0e5bb Restore and fix compile warnings 2012-06-17 18:47:05 -03:00
Eduardo Bart ad04043a88 Lua binder compability changes
* A lot of changes in lua binder to compile with clang's libc++
* Add more portability to luabinder
* Remove const keyword from bound lua functions
* Deprecate std::bind usage with luabinder replace its usage with registerSingletonClass/bindSingletonFunction for binding singleton classes
* Fix a bug in lua binder where calling functions with bil object would make the client crash
* More fixes to compile with clang
2012-06-17 12:21:46 -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 4813b7eb4b many changes
* Fixes in WIN32 platform
* Remove unused files
* Make StaticText work more like tibia
* Fix WIN32 compilation
* Fix regression in framebuffers that caused battle to disappear
* Shader fixes for DX9
* Add two new shaders: noise and heat
2012-06-15 21:46:36 -03:00
Eduardo Bart 10b60a3871 fix high CPU usage under low framerate limit 2012-06-15 08:46:55 -03:00
Eduardo Bart cae4d46a7d implement style priority with # syntax 2012-06-14 21:30:46 -03:00
Eduardo Bart 83f86eac64 experimental map shaders 2012-06-14 15:26:55 -03:00
Eduardo Bart 318109158a changes to make development easier in QtCreator 2012-06-12 13:50:43 -03:00
Eduardo Bart 8cef6463b3 improve miniwindow moving 2012-06-11 11:10:03 -03:00
Eduardo Bart e91f822f62 fixes in WIN32-EGL 2012-06-10 20:48:53 -03:00
Eduardo Bart 29dadb849e add EGL to win32 2012-06-10 15:52:08 -03:00
Henrique Santiago 52333f5d28 progress rect 2012-06-10 03:09:37 -03:00
Eduardo Bart 1a2e97bb5e show private message on screen
* disable GL blending in some situations to speedup on older hardware
* fix wrap size in CachedText
2012-06-09 10:00:08 -03:00
Eduardo Bart 205aefe12f add missing file 2012-06-08 22:15:58 -03:00
Eduardo Bart 95cf7eb788 graphics optimizations/fixes/features
* cache text vertex for StaticText, AnimatedText and Creature names
* improved outfit rendering
* fully compatible with OpenGL 1.1
* enable mipmaping for game sprites again
* Ctrl+W hotkey clean game texts
2012-06-08 21:40:41 -03:00
Eduardo Bart 1a7f2a44fc graphics fixes and improvements 2012-06-08 21:40:41 -03:00
Henrique Santiago 4f9ca15ef0 bind clock, fixes to waiting list 2012-06-08 17:58:24 -03:00
Eduardo Bart a8b9dcbf17 bind new system information functions 2012-06-06 22:01:49 -03:00
Eduardo Bart 321c09e471 fix compiler flags 2012-06-06 21:12:07 -03:00
Eduardo Bart e698383538 fix addons search path 2012-06-06 19:39:42 -03:00
Eduardo Bart 70ea0361b6 new useful function, cycleEvent 2012-06-06 17:14:53 -03:00
Eduardo Bart bb1fb939c4 just fixes
* fix battle rendering
* fix rendering glitch when following creatures
* properly throw exceptions from C++ to lua and avoid exception crashs
* fixes rendering states in framebuffer
2012-06-06 11:10:35 -03:00
Eduardo Bart 7a529d23be check lua stack size to avoid possible overflows 2012-06-06 00:44:17 -03:00
Henrique Santiago 3cb5216858 protocol login working 2012-06-05 18:27:37 -03:00
Henrique Santiago 6b9943447a protocol login at lua 2012-06-05 16:16:57 -03:00
Eduardo Bart 023a4ebef6 performance improvements 2012-06-05 12:36:27 -03:00
Eduardo Bart 4de9787198 new gcc compile optimizations 2012-06-05 09:39:45 -03:00
Eduardo Bart e5000fa577 encrypt password and account number
* the encryption uses a unique machine key, this means that if anyone steals config.otml with a saved password,
he will not be able to decrypt the password without the machine UUID key
* the encrypt uses a simple XOR encryption method, encoded with base64 and adler32 summing
2012-06-04 09:38:25 -03:00
Eduardo Bart 296f2a17c4 many modules fixes 2012-06-03 21:28:19 -03:00
Eduardo Bart cfa7db77da fix possible crash in older opengl driver implementations 2012-06-03 20:12:32 -03:00
Henrique Santiago 3f95d62467 fix draw square 2012-06-03 17:35:07 -03:00
Eduardo Bart 576e775494 fix initialization opengl glitch 2012-06-03 17:25:12 -03:00
Eduardo Bart 75f8b255ec fix initialization opengl glitch 2012-06-03 17:06:05 -03:00
Eduardo Bart e4cb9b27db fix crash in grid layout 2012-06-03 16:42:22 -03:00
Eduardo Bart d49cad31e2 fixes in EGL platform 2012-06-03 11:10:34 -03:00
Eduardo Bart 079b7a5c41 allow to change graphics engine in options 2012-06-02 18:41:20 -03:00
Eduardo Bart e6d2e877f0 remove testing code 2012-06-02 16:16:50 -03:00
Eduardo Bart 257f652bb7 more opengl graphics fixes 2012-06-02 15:58:30 -03:00
Eduardo Bart cde81666b8 fix opengl regressions 2012-06-02 12:54:35 -03:00
Eduardo Bart 1c5b906b5b some optimizations 2012-06-02 11:43:27 -03:00
Eduardo Bart 59a80ffaf9 scroll when focusing widgets 2012-06-01 21:38:26 -03:00
Eduardo Bart ba01909088 fix alpha blending issues 2012-06-01 20:22:10 -03:00
Henrique Santiago 6fce78d519 compile error, lua const 2012-06-01 17:53:04 -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 946ec64e7f new protocol system fixes 2012-05-14 21:04:04 -03:00
Eduardo Bart 7bca3de8eb allow usage of network messages in extended opcode 2012-05-14 20:13:48 -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 e7030a4995 ... 2012-05-14 09:29:16 -03:00
Henrique Santiago d33d0c2ee8 fix missiles, mapzoom, restore relwithdeb, replace 32 with tilepixels 2012-05-13 13:05:09 -03:00
Henrique Santiago 1203756baf items draw rework, npc trade fix 2012-05-13 12:05:30 -03:00
Eduardo Bart 7b512bfa9f fix minor bug in opengl1 framebuffer 2012-05-13 11:45:32 -03:00
Eduardo Bart e2dd71185b fixes for OpenGL ES platforms 2012-05-13 09:48:19 -03:00
Eduardo Bart 5e176ca6d1 fix in cmake configuration for LuaJIT and OpenGL ES 2012-05-13 09:15:30 -03:00
Eduardo Bart fa9c942471 basic protocol 953 support, logging in real tibia! 2012-05-12 01:52:16 -03:00
Eduardo Bart 5a47e9d8a9 support for protocol 810
* change in protocol/network classes to make compatible with older protocols
* use filestream for reading dat
* add many ifdefs for multi-protocol support
2012-05-11 15:02:57 -03:00
Eduardo Bart 16f991e2ed fix float precision issue for comparing colors 2012-05-09 22:50:48 -03:00
Eduardo Bart 04eca969fa fix compile issue for win32 2012-05-09 20:04:09 -03:00
Eduardo Bart 6495d74edd restore outfit colors
* rework sprite manager and ThingType
* render colored outfits again compatible with OpenGL 1
2012-05-09 17:26:34 -03:00
Eduardo Bart fea34a41ea trade working
* use only mouse left release in checkboxes
* remvoe duplicated code in radiogroup
* implement player trade
2012-05-09 09:24:35 -03:00
Eduardo Bart 2afa80b1cd slowly adding documentation.. 2012-05-02 20:20:25 -03:00
Eduardo Bart 44cf5e20d3 begin some documentation in styles 2012-05-02 15:31:07 -03:00
Eduardo Bart 02c5e7b8ff missing files
* add questlog icon
* add playertrade otui
* some protocol changes for extended messages
2012-05-01 21:41:42 -03:00
Eduardo Bart 788a831f24 bug report module
* change modules authors and website
* avoid anchors recursivity crash
* update README
2012-05-01 10:06:38 -03:00
Eduardo Bart 2f0a151fed questlog module complete 2012-04-30 23:00:07 -03:00
Eduardo Bart 00740b56f3 begin playertrade, questlog and textbooks modules 2012-04-30 21:20:27 -03:00
Eduardo Bart beaba25af1 UI tweaks 2012-04-30 16:30:37 -03:00
Eduardo Bart 3f689e0edf optimize UIWidget for largers NPC trades 2012-04-30 03:34:29 -03:00
Eduardo Bart 008fa85635 revert windows and line ending sh*t 2012-04-28 22:07:47 -03:00
Eduardo Bart df0147cf64 remove usage of libpng with custom save_png 2012-04-28 21:16:22 -03:00
Cayan 6ed0e099db Added support for exporting the sprites as PNG files. 2012-04-28 20:47:34 -03:00
Eduardo Bart cc965bb77b add libpng as dependency
* NOTE: you will need to download the new required libraries
2012-04-28 19:02:57 -03:00
Eduardo Bart b75483e9bf fixes
* fix filestream read
* fix transparent minimap
2012-04-27 19:17:51 -03:00
Eduardo Bart d0b839a4eb fix warnings and some reloading issues 2012-04-27 01:54:14 -03:00
Eduardo Bart fae2cc6481 new scripting functionality
* dofiles functions to run all scripts inside a directory
* new style option ! that evaluates its value from a lua code
2012-04-26 12:11:03 -03:00
Eduardo Bart 243bd3a930 fix rendering of quotes 2012-04-26 00:34:32 -03:00
Eduardo Bart 9aa12acc22 performance improvements
* no more freezes because of file IO from hard disk, now we cache sound/spr file buffers
* more opengl painter tweaks
2012-04-24 18:05:46 -03:00
Eduardo Bart ee664657fb avoid some opengl redundant calls 2012-04-24 13:37:46 -03:00
Eduardo Bart 70f14b5ac3 improve performance on linux by removing glFinish() 2012-04-24 13:23:33 -03:00
Eduardo Bart 9cf40d7f53 fix repeated texture allocation bug 2012-04-24 13:18:45 -03:00
Eduardo Bart efd17361f8 non relevant drawing changes 2012-04-24 09:21:48 -03:00
Eduardo Bart dc08ba2e17 fix F10 hotkey on Windows 2012-04-24 09:21:48 -03:00
Eduardo Bart dcb196d45a minor opengl1 optimization 2012-04-20 10:32:21 -03:00
Eduardo Bart affcd03e06 don't use hardware buffers by default 2012-04-20 10:18:33 -03:00
Eduardo Bart d006e52c78 support for non power of two textures 2012-04-20 09:07:47 -03:00
Eduardo Bart f14706206a continue implementing new graphics engine
* implement OpenGL ES 1.1 and OpenGL ES 2.0 support
* new framebuffer that can run on any opengl implementation
* fixes in outfit size rendering
2012-04-20 07:16:03 -03:00
Eduardo Bart 58d76e255d begin implementing OpenGL 1.0 engine
* option to pass -opengl1 or -opengl2 as argument
* note that with this commit there are a lot of graphics regressions and the master will remaing unstable for a while
* shaders disabled for a while
2012-04-18 20:03:43 -03:00
Eduardo Bart a4a00a49fe cmake option to use luajit 2012-04-16 10:57:24 -03:00
Eduardo Bart 1d558bc412 make precompiled header work again 2012-04-15 08:00:13 -03:00
Eduardo Bart fe33614c3a fix memory leak in sound stream 2012-04-15 08:00:13 -03:00
Henrique Santiago 341898f1d0 add cmake toolchain for crosscompiling with w64-minwg32 2012-04-14 20:00:04 -03:00
Eduardo Bart c3eae3ba06 bind sound functions and add sample startup music 2012-04-14 11:19:58 -03:00
Eduardo Bart 8e679f2da7 get stereo audo working on linux 2012-04-14 10:15:51 -03:00
Eduardo Bart ae67c6adbc drop usage of threads in sound system 2012-04-14 06:53:32 -03:00
Eduardo Bart cb7bd521d2 fix compilation on win32 2012-04-13 21:14:25 -03:00
Eduardo Bart c4525059ce implement basic sound engine using OpenAL 2012-04-13 16:54:08 -03:00
Eduardo Bart 9b4115a7e5 fix EGL compilation 2012-04-12 17:00:51 -03:00
Eduardo Bart 0b8d8b4595 enable ogl debug with ifdefs 2012-04-12 16:56:05 -03:00
Eduardo Bart 879827bdbc enable opengl debugging on x11 2012-04-12 16:24:00 -03:00
Eduardo Bart a46a16738c performance improvement, lock free render 2012-04-12 11:26:56 -03:00
Eduardo Bart 0fe5491635 fix display of stackable items in shop 2012-04-11 00:37:46 -03:00
Eduardo Bart 4c67e57dd4 fix cmake error 2012-04-11 00:07:14 -03:00
Eduardo Bart 1d2f6c7e9f enable text-auto-resize for width 2012-04-10 23:59:05 -03:00
Eduardo Bart 48d2027327 use counter for disabling layout updates 2012-04-09 18:44:33 -03:00
Eduardo Bart 5425d344ba optimize widget destruction 2012-04-09 17:53:45 -03:00
Eduardo Bart 2017fb366e some optimizations 2012-04-09 09:36:40 -03:00
Eduardo Bart db00792351 update compile options 2012-04-09 09:36:40 -03:00
Henrique Santiago 2f3c83e858 textedit maxlength, fix charlist status height 2012-04-08 19:10:07 -03:00
Eduardo Bart 92bd1aba54 optimize graphics performance 2012-04-08 16:31:36 -03:00
Eduardo Bart 2e43a77d64 change mouse press behaviour 2012-04-07 00:37:29 -03:00
Eduardo Bart 2835a66bab experimental minimap
* a lot of rework in MapView
* new APIs for UIMap
2012-04-06 20:15:52 -03:00
Eduardo Bart 218f2e4994 add API to remove widget anchors 2012-04-05 19:46:53 -03:00
Eduardo Bart 4f15da695c optimizations 2012-04-05 16:08:46 -03:00
Eduardo Bart 49727c573f platform fixes
* fix black cursor on win32
* fix front buffer refresh on some x11 platforms
* fix outfit framebuffer glitch
* display entergame by default
* change some icons
2012-04-05 09:18:25 -03:00
Eduardo Bart f8d4ef60d9 fixes in x11 platform
* fix clipboard paste on x11
* fix alt tab and keyboard issues
2012-04-04 21:02:42 -03:00
Eduardo Bart 16acfebe3b move clipping to painter 2012-04-04 19:46:49 -03:00
Eduardo Bart 1410031e02 fix issues in ctrl/shift/alt states on win32 2012-04-04 19:35:56 -03:00
Eduardo Bart 79b4136a8d ... 2012-04-04 17:32:43 -03:00
Eduardo Bart b5a4d31fa7 more graphics optimizations
* avoid buffers clears
* use scisors testing instead of stencil testing for clipping
* remove stencil buffers
2012-04-04 17:18:24 -03:00
Eduardo Bart 53d56259c7 fix compile error no ARM platforms
* and some improvements
2012-04-04 16:02:43 -03:00
Eduardo Bart 2c38dfb397 fix dumbfounding issue on win32 that caused HUGE lags 2012-04-04 13:21:02 -03:00
Eduardo Bart 034fce9147 improve clipping performance 2012-04-04 12:19:17 -03:00
Eduardo Bart 8b184d3ce8 compile fixes for gcc 4.7 in 32bit platforms 2012-04-04 12:12:25 -03:00
Eduardo Bart 27e24bda28 fixes to compile on gcc 4.7 2012-04-04 10:16:33 -03:00
Eduardo Bart 11ad1f5c5b performance improvements 2012-04-04 09:56:22 -03:00
Eduardo Bart c250bfcf42 fix issue 2012-04-03 23:54:56 -03:00
Eduardo Bart dd875fc925 support for GL_EXT_framebuffer_object 2012-04-03 23:41:12 -03:00
Eduardo Bart cb890e8cb1 prevent some protocol crashs 2012-04-03 19:24:15 -03:00
Eduardo Bart c33741d324 display unsupported extensions 2012-04-03 17:12:05 -03:00
Eduardo Bart d4afb71263 clean containers when relogging 2012-04-03 11:15:11 -03:00
Eduardo Bart 90d3acce2a restore containers
* implemente Container class
* restore module containers
* add lua bindings for std::map
* improve grid layout
* fixes in UIItem rendering
* changes in miniwindow design
2012-04-02 20:09:47 -03:00
Eduardo Bart 8450f1f896 add FileStream class
* minimize memory consumption by using FileStream for loading sprites
2012-04-02 12:51:03 -03:00
Eduardo Bart 7e6fe71b5e new build types
* and remove uneeded files
2012-04-02 09:49:43 -03:00