Commit Graph

880 Commits

Author SHA1 Message Date
Henrique Santiago ab7400c51d Progress on issues #60, #24, #21 2012-08-18 02:04:15 -03:00
Eduardo Bart 403ed3c10f Implement C++ connect() 2012-08-17 23:08:00 -03:00
Eduardo Bart fdea7f3d66 Basic changes to support multiple charsets in the future 2012-08-17 19:45:56 -03:00
Eduardo Bart affe641a1f Add remove function to stdext storages 2012-08-17 18:19:51 -03:00
Henrique Santiago 4d2bd54f6b Fixed #12 #28 #51 issues 2012-08-17 18:37:11 -03:00
Henrique Santiago 4e8afab335 Fix rsa change, messagebox and remove lua variable from c++ 2012-08-14 17:37:28 -03:00
Eduardo Bart 150059a561 Improve image clip rects calculation 2012-08-14 03:41:12 -03:00
Henrique Santiago 7fb2f6deb5 Add getIp function, remove unused sql function 2012-08-12 01:54:45 -03:00
Henrique Santiago 8753f82fd0 Change cursor on textedit, remove possibility to close EnterGame window 2012-08-10 16:32:21 -03:00
Eduardo Bart 608b8f8b44 Fix a warning in clang 2012-08-10 00:48:34 -03:00
Eduardo Bart 10c564f90e Fix regression in walk paralyze 2012-08-09 00:51:13 -03:00
niczkx 85b52fbdfd More work on OTBM saving (now it can save binary map w/o spawns and houses) w00t, the 1000th commit 2012-08-08 08:00:16 -06:00
Henrique Santiago 93fdd2e326 Fix messagebox width, use boost in stdext net 2012-08-07 23:18:36 -03:00
Henrique Santiago 466d8e8820 Use custom upchar and lochar by default due to accents in font files. 2012-08-07 21:12:36 -03:00
Henrique Santiago 4919bdf1bc Bind net functions 2012-08-07 14:05:55 -03:00
niczkx 6feaeff8cc Fix NPC/Monster rendering for OTBM 2012-08-07 03:12:44 -06:00
Henrique Santiago a2db210012 Create stdext net, changes to outfit and exit windows. 2012-08-06 22:11:42 -03:00
Eduardo Bart 54f4e2b801 Fix console error 2012-08-06 20:54:56 -03:00
Eduardo Bart 5232501ecf Optimize dynamic storage 2012-08-06 20:52:55 -03:00
Henrique Santiago dcde317904 Fix dragable and npcto/from and remove margintop from entergame. 2012-08-06 20:43:25 -03:00
Henrique Santiago e6bd3907e1 Background label hide function, Skins fix and combobox hide, messagebox changes, show entergame when reload 2012-08-06 16:15:20 -03:00
Henrique Santiago 0f980ec18b Internal change to entergame, fix image-offset-y mistake, change the way default font is set in skins. 2012-08-05 18:43:45 -03:00
Henrique Santiago e78edad4c6 Widget text upper case option, change gimp plugin mode to executable 2012-08-05 15:26:08 -03:00
Henrique Santiago 18c882f1a0 Allow list bindings 2012-08-05 10:56:15 -03:00
niczkx 5abf8622e5 rewrite some parts of otbm saving and uncomment it for testing later 2012-08-05 05:26:27 -06:00
Eduardo Bart a01534e6a2 Add missing thread header 2012-08-04 13:07:21 -03:00
Eduardo Bart 176e97c3ce More compile fixes now for ubuntu... grr 2012-08-04 13:01:26 -03:00
Eduardo Bart 521adc308b Fix broken compilation in mingw32 2012-08-04 12:36:23 -03:00
Henrique Santiago 156ab9b879 More SHA encoding functions and add missing copyright 2012-08-04 11:37:55 -03:00
Henrique Santiago fb7ab21e71 Move RSA class to Crypt 2012-08-04 10:54:35 -03:00
Eduardo Bart fa15c25951 Implement support for coroutines in C++ 2012-08-04 01:46:04 -03:00
Eduardo Bart 6a68569319 Minor changes 2012-08-03 16:35:39 -03:00
Henrique Santiago 4e0642c814 Removed GMP and added OpenSSL. Rsa class might be moved to Crypto later. 2012-08-03 13:02:01 -03:00
Henrique Santiago d939ade06d Fix compile issue and miniwindows index 2012-08-03 10:26:04 -03:00
niczkx 092876d0e1 more fixes to compiling with gcc 4.6 2012-08-03 15:03:34 -06:00
Eduardo Bart 7d62763c92 Fix compile issue in gcc 4.6 2012-08-03 09:53:28 -03:00
Eduardo Bart c218f915ba Fix possible link issue in OS X 2012-08-03 09:53:28 -03:00
Henrique 4954d5fecb Some mysql stuff 2012-08-03 08:44:42 -03:00
Eduardo Bart 9e917ece88 Fix glitch caused by grounds with speed 1 2012-08-03 04:42:49 -03:00
Eduardo Bart ec1d5aa260 Minor changes
Update hovered widget when moving widget
Remove lockWalk from g_game.follow()
2012-08-03 03:16:14 -03:00
Eduardo Bart f103f3ee62 Minor fix in packed_vector 2012-08-02 08:43:49 -03:00
Henrique 7116f6dea1 More sql stuff 2012-08-02 08:36:21 -03:00
Eduardo Bart ee4f155b92 Minor fix in std::packed_any 2012-08-02 06:27:16 -03:00
Henrique 8a5195430a Add SQL extension, still in early stage 2012-08-01 22:56:50 -03:00
Eduardo Bart 773d58da01 Optimize lua object pushing 2012-08-01 22:34:19 -03:00
Henrique 3b345cf868 Add setXteaKey function 2012-08-01 21:25:11 -03:00
Eduardo Bart 103daa63e3 Fix compile issues with clang 2012-08-01 18:06:31 -03:00
Henrique 4f0e00fdfa Change to RSA decrypt function 2012-08-01 15:34:42 -03:00
Eduardo Bart 3bac3dcbb4 Rework stdext classes
Implement new classes:
* stdext::any => ligher replacement for boost::any
* stdext::packed_any => like any but optimized to use less memory
* stdext::shared_object => ligher replacement for std::shared_ptr
* stdext::shared_object_ptr => replacement for boost::intrusive_ptr
* stdext::fast_storage => for storing dynamic data
* stdext::packed_storage => same but with less memory
* stdext::packed_vector => std::vector with less memory

Compiling should be a little faster now because global boost including
is not needed anymore
2012-08-01 09:23:35 -03:00
Henrique 3c1a5f24e8 Fix to protocolgame 2012-07-31 14:23:52 -03:00
Eduardo Bart 614d1544c0 Fix market reload and a crash when exiting 2012-07-31 11:42:26 -03:00
Eduardo Bart bca1af8f11 Add warning when trying to use invalid LuaObject class 2012-07-31 09:51:51 -03:00
Eduardo Bart f4641333f4 Fix a rare drag/drop issue 2012-07-31 06:34:45 -03:00
Eduardo Bart fbb3c9933a Fix audio stopping on buffer underruns 2012-07-31 00:12:04 -03:00
Eduardo Bart a1fb373b1b Revert protocol bug added in lasts commit 2012-07-30 21:08:32 -03:00
niczkx e316c0b5cd Merge both getString functions in binarytree 2012-07-31 02:02:41 -06:00
Henrique 12e6602925 Bind connection and fix protocol recv without xtea 2012-07-30 17:12:38 -03:00
Henrique c969f5209f Some changes to server compatibility 2012-07-30 16:40:03 -03:00
niczkx 4c369bc823 fix compiling on gcc 4.6 (too early to use 4.7.1...) 2012-07-30 18:52:30 -06:00
Mark Samman 39db801f93 Fixed 9.6 otb loading 2012-07-30 18:38:23 +02:00
Eduardo Bart 03b8241bbc Rename stdext::shared_object_ptr to compile in gcc 4.6 2012-07-30 12:08:21 -03:00
Eduardo Bart 59b6abfa09 Implement message modes for 9.6
Fix possible crash when closing otclient
Fix private messages
Fix messages in 9.6
2012-07-30 09:33:52 -03:00
Eduardo Bart 05436e135a Fix some bugs 2012-07-30 05:51:03 -03:00
Eduardo Bart 1e2d20d289 Fix typos 2012-07-30 04:18:05 -03:00
Eduardo Bart 487dafb8c0 Fix compile issue in mingw32 2012-07-29 17:18:39 -03:00
Eduardo Bart e2efbcffbe Fix crash in clang while casting enums 2012-07-29 09:58:25 -03:00
Eduardo Bart 68ebcb559f Fixes for compiling with clang 2012-07-29 09:04:47 -03:00
Eduardo Bart 73769c62e4 Just some refactoring 2012-07-29 07:32:54 -03:00
Eduardo Bart e0431021b5 Huge engine change, replace all std::shared_ptrs
Create a new shared pointer type stdext::shared_object_ptr and stdext::shared_obj
using boost::intrusive_ptr

Advantages:
 * half memory usage
 * faster and lightweight

Disadvantages:
 * using weak_ptr is not supported anymore
 * compiling seems slower
2012-07-29 00:34:40 -03:00
Eduardo Bart 17dd08d983 More compatibility with OS X in CMake
Optimize Tile
2012-07-28 16:04:40 -03:00
Eduardo Bart 497902736c Enable widget debugging 2012-07-28 08:43:48 -03:00
Eduardo Bart 4566472662 Allow to use more than 2GB of memory on win32 2012-07-28 03:24:40 -03:00
Eduardo Bart d85dd3e20f Normalize source code
Add .gitattributes
Remove trailing whitespaces
2012-07-28 02:07:57 -03:00
niczkx a240429cb8 Fix possible gcc optimizations to binary reading 2012-07-28 02:54:25 -06:00
Eduardo Bart d2b85bdba8 More modules fixes 2012-07-26 19:13:47 -03:00
Eduardo Bart 0a49f58e50 Fix crash when InputMessage is too large 2012-07-26 11:03:57 -03:00
Eduardo Bart c795eb91ab More multiprotocol support 2012-07-26 03:10:28 -03:00
Eduardo Bart c54cd1fdf1 Use new coding style in game modules
Lots of refactoring and changes
Remove docs folder
2012-07-24 02:30:08 -03:00
Eduardo Bart 1c3e630237 Improve modules and sandbox system 2012-07-23 21:22:38 -03:00
Eduardo Bart 61d64c7417 Support for OTML inline sequences 2012-07-23 17:51:19 -03:00
Eduardo Bart c9dce51458 Update otml and casts
Improve casts performance
OTML can now understand value escaped sequences
Use long instead of int for lua integer
2012-07-23 01:33:37 -03:00
niczkx 3461761739 comment out & remove untested stuff 2012-07-20 21:18:03 +02:00
niczkx 8a49d09b75 stop using pairs instead of index loops, please, it's so much slower 2012-07-20 20:56:08 +02:00
Eduardo Bart a11d6e501e More refactoring and some changes
* Move protocol safeSend() to send()
* Bind some new functions
* Refactor lots of enums
2012-07-20 02:52:57 -03:00
Eduardo Bart a6d53532d2 Rename ThingType classes 2012-07-19 22:25:55 -03:00
niczkx 9dc88de6b0 missed something in last commit 2012-07-19 17:28:40 +02:00
niczkx f74b013da2 ignore this 2012-07-19 15:55:10 +02:00
Eduardo Bart f289db3a9e Module sandboxing system
Sandboxing makes module scripts run inside an isolated lua environments,
making more easier and secure to script

Move and rework TextMessage using the new sandbox system
2012-07-19 06:15:23 -03:00
Eduardo Bart b0e6b3b8fb Update item OTBM attributes reader
* Fix some lua errors generated by playMusic
* Fix possible crash when starting otcliet without dat loaded
2012-07-18 05:34:17 -03:00
niczkx c8d1d5ecf2 rewrite xml stuff #2 - will be testing the monsters xml code soon 2012-07-18 02:58:28 -03:00
Eduardo Bart cb1848d48d Fix error in start/stop music 2012-07-17 22:22:21 -03:00
Eduardo Bart eb24d6776e Multi-protocol
Lots of chagnes to add multi protocol flexibility, not really
completed yet, still have to rework text messages opcodes and other stuff,
so this still a working in progress feature

* Rework dat reader, the dat reader can now
* dinamically detect dat version
* Split game into gamelib and game_interface
* Lots of other minor changes
2012-07-17 20:53:19 -03:00
niczkx 28825a3298 lalala 2012-07-18 00:03:46 +02:00
niczkx 02f89dd8be fixes 2012-07-17 16:12:29 -03:00
BeniS b7ac6ce6d5 Added Market/MarketProtocol module to begin the construction of the Market! Fixed some Minor Issues, and Some Cosmetics
* Added new protocol lib.
* Added missing Game Features to game/const.lua
* Added new Market module that will handle the market/market protocols too.
* Finished Market protocol and begun on the market structure (MarketOffer etc).
* Removed any traces of market protocol in the core (I think).
* Moved minimap images to /images.
* Removed old zoom images for minimap.
* Fixed a bug with randomize outfit.
2012-07-18 02:36:27 +12:00
niczkx 12d30f7355 monsters 2012-07-17 12:00:22 +03:00
Eduardo Bart c131d29b5f Fix some issues with the current working directory 2012-07-16 21:30:15 -03:00
Eduardo Bart bc81c9c8bf Packages system with .otpkg files
When otclient initializes it tries to find all .otpkg files inside the
current search paths (./ ./modules ./addons) and then add them
to the front of current search paths. This way .otpkg can contains
many modules/addons and modifications in a single file that otclient
can recognize.

otpkg files can be compressed files supported by PhysFS, which
are ZIP (.zip) and LZMA (.7z).
2012-07-16 16:35:14 -03:00
Eduardo Bart 7a08fed689 Optimize overall memory usage
* Fixes in otbm loader
* Rework BinaryTree
2012-07-15 10:30:39 -03:00
Eduardo Bart 1b0c527ad6 Fix Thing::getTopThing 2012-07-15 03:17:31 -03:00