Commit Graph

1769 Commits

Author SHA1 Message Date
BeniS ca46b5033e More progress on cipserver login for pv973 and a few fixes.
* Fixed the "options" module hotkey (changed boost walker to Ctrl+Shift+D).
* Fixed a small issue with UIMiniWindow:setup() function (was setting parent before its pos).
* Pic signature has changed for cipsoft client.
* Fixed 'client type' byte position in the login packet.
* Changed the ping function to execute every 4 seconds rather than 2.
* Changed some protocolgame for pv973 support.
2013-01-04 11:42:02 +13:00
BeniS c47641d7e1 Merge branch 'master' of https://github.com/edubart/otclient 2013-01-03 21:25:00 +13:00
BeniS fc55c6b524 Interface edits, additions, and fixes:
* Added a new module for exiting the client (client_exit).
* Added tab spacing to the UITabBar class.
* Added tab popup menus for things like channel tabs.
* Impelemented channel tab popup menus (still need to be finished).
* Fixed UITabBar tab draging (will now change after dragged half way over the
  next tab, not 2 pixels).
* Fixes to the client_options module.
* Edited some UI settings.
* Changed game_cooldown and game_spelllist menu button icons.
* Fixed some typos.
2013-01-03 21:24:07 +13:00
Henrique Santiago 2aeec22ef8 Fix items draw inside uiitem 2013-01-03 04:24:07 -02:00
BeniS 8cdab5c814 Tested and fixed #155
* Also fixed a typo in the game_tibiafiles module.
2012-12-31 00:32:09 +13:00
BeniS fcdf2286b6 Fix issue #155 (only tested on pv973)
Please let me know if pv870+ works now.
Note:
 * pv = protocol version,
 * cv = client version
For people wondering.
2012-12-30 20:53:24 +13:00
BeniS abf0ee4303 More walk control optimization and fixes:
* Finished off the walking control optimization! (Should be smooth controlling now).
* Fixed issue #151
* Fixed an issue with the character list.
* Fixed a bug in the g_keyboard.isKeySetPressed function.
2012-12-30 19:14:49 +13:00
BeniS 1782de7336 Game control precision edits and many other fixes:
* Updated the walking(mouse/keys) control to be a lot more responsive/smooth!
* Updated creature diagonal steps to animate faster (due to demand).
* Added a warning popup for boost walker option in cipsoft servers.
* Added KeyUp event controls in the g_keyboard class.
* Fixed an issue with the minimap not reconfiguring.
* Fixed a bug with creature lights drawing properly.
* Fixed refreshContainer method.
* Some layout edits.
* Some minor typo fixes.

TODO:
* Add walk event stack.
* Test new walking edits extensively.
* Finish pending state feature.
2012-12-30 06:41:14 +13:00
BeniS 034c768994 Compatibility fix to cv981 new speed law.
* Also a minor fix to setting client version.
2012-12-29 02:34:36 +13:00
BeniS 44e428bccb Progress updating to cv981/pv973:
* Implemented the new client AND protocol version methods.
* Implemented the new speed laws added in cv980 (http://www.tibia.com/news/?subtopic=newsarchive&id=2251).
* Added more missing bytea to login packets (client version/type and some unknown bytes).
* Fixed the InputMessage::getDouble method.
* Cleaned up some of the const values.
* Started on the pending state features.

TODO:
* Pending game state feature.
* Ensure version compatibility hasn't been compromised.
2012-12-29 00:05:45 +13:00
BeniS 619285069c Started updating to 9.8+ features, not yet finished (unsafe version).
Need to finish:
* Pending login state
* New creature speed changes
* Vip state displays

Fixed:
* Creature light
* Missing lua constants

If someone can finish this off that would be good,
I will be busy for a while :)
2012-12-27 02:56:06 +13:00
Eduardo Bart ec8d50497b Fix http://otland.net/f494/otclient-error-171679/ 2012-12-08 16:14:10 -02:00
Eduardo Bart 7c48a98b67 Minor fixes
* Fix auto openning channels with id 0 (guild chats)
* Minor fix in print
* Fix use of items behind creatures with classic control
* Fix teleports of 1sqm
2012-12-08 16:08:54 -02:00
Eduardo Bart 5de031fb8b Workaround for issue #146 2012-12-03 21:26:58 -02:00
Eduardo Bart f5b3bfda11 Lights minor fixes 2012-12-03 21:18:39 -02:00
BeniS dc6d2bb078 8bit color shouldn't be higher than 216, by mistake. 2012-12-03 16:47:21 +13:00
BeniS 617e6b302b Fix for creature lights.
* Will now load the dat values for creature lights (ed if you know a more conventional way for this please let me know).
* No need to draw light for the outfit the creature draw will handle it.
Note: not sure if the from8bit method should limit at 256 or not, but tibia dat contains colors 216+.
2012-12-03 13:17:41 +13:00
Eduardo Bart 6d6f600c44 Fix creatures light 2012-12-01 14:04:10 -02:00
Eduardo Bart ce6423320e Add ambient light in graphics options 2012-11-30 14:47:53 -02:00
Eduardo Bart 5fed08b17e Bind functions for minimum ambient light 2012-11-30 14:31:19 -02:00
Eduardo Bart f851bb7777 Minor fixes in lights 2012-11-30 09:03:42 -02:00
Eduardo Bart 6e154f6b2c Lights now are looking really good
* Draw lights beneath holes
* Improve light particle
* Light intensityvaries inversely with the square of the distance
* Local player always have a minimum light in complete darkness
* Creature names are behind lights now
2012-11-29 19:38:39 -02:00
Eduardo Bart d7a45311ed Fix issue #145, #29 and #39 2012-11-29 00:52:10 -02:00
Eduardo Bart 81068f820d Implement lights, thanks @Tarjei400
Now otclient have lights! This code was originally made
by @Tarjei400, I have improved it and merged into otclient
master. Many thanks for tarjei for the contribution.

Warning, this still experimental, fixes may come in the next days.
2012-11-28 23:47:36 -02:00
Samuel eb979ef7cd Modal Dialogs / Support for 9.70
OTC now supports showing and answering modal dialogs.

addDialog(modaldialog, dialogId, cid, callback)

TODO:
-find out what the "popup" value does.. (Maybe someone knows)
2012-11-27 14:48:48 +01:00
Eduardo Bart d4370e7c5d Fix issue #127 2012-10-24 18:51:57 -02:00
Eduardo Bart 8bb115d6d4 Fix issue #134 2012-10-24 18:03:15 -02:00
Eduardo Bart c7890e7a49 Fix issue #124 2012-10-23 18:16:14 -02:00
Eduardo Bart a6424f3022 Fix issue #118 2012-10-23 17:32:04 -02:00
Eduardo Bart 5f72488eba Fix issue #121 2012-10-23 17:09:39 -02:00
Eduardo Bart 6acdb0fd64 Fix issue #132 2012-10-23 16:00:12 -02:00
Samuel 3990ee76e7 Minimap Icons
Now server can call:
doPlayerAddMapMark(cid, pos, icon, description)
and it will be parsed.

TODO:
Adding map icons by rightclick on minimap menu.
Removing icons.

Needs to be tested when switching between different versions.
2012-10-11 17:36:00 +02:00
otfallen f26b359ae5 The smallest change of 2012 2012-10-08 01:04:14 +00:00
Eduardo Bart 5756f20026 Fix orange text bug for protocol >861 2012-10-05 19:18:16 -03:00
Eduardo Bart fa8b77f0c8 Fix issue #109 2012-10-05 16:14:05 -03:00
otfallen ced5c035b9 optimize otb/xml a bit.
m_itemTypes was being resized too much than expected so is allocin
new itemtype each time it was not being found (which is fake).

otb loader is slow, not sure if it's because of the binary reader
or just the file format is stupid
2012-10-05 20:31:05 +00:00
Eduardo Bart 526885f70d Fix issue #14 2012-10-05 15:17:10 -03:00
Samuel 6c2539bbd4 Added support for curly braces in NPC chat
-Added overlay to the default consoleBuffer for highlighting
-Char 127 now is used as spacer (Width 1)
-Supports default font "verdana-11px-antialised"

http://i.imgur.com/8drWH.png
2012-10-05 17:50:54 +02:00
Eduardo Bart 58d3a2ec72 Fix issue #99 2012-10-04 19:58:22 -03:00
Eduardo Bart 7b38e44382 Fix issue #105 2012-10-04 19:44:48 -03:00
Eduardo Bart 68f9af376f Fix issue #103 2012-10-04 19:18:48 -03:00
Eduardo Bart 393f8c7a9b Fix glitch in battle when creatures walk 2012-10-04 18:42:10 -03:00
Eduardo Bart 31efe0a82d Fix crash when closing otclient in debug mode 2012-10-03 12:49:57 -03:00
otfallen 9650179ae8 More Mac OS X progress.
Tested-by: Christopher Eklund <eklundchristopher@gmail.com>
Signed-off-by: otfallen <f.fallen45@gmail.com>
Signed-off-by: Christopher Eklund <eklundchristopher@gmail.com>
2012-09-29 23:08:10 +00:00
otfallen f0e85e21b3 Mac OS X port progress
Tested-by: Christopher Eklund <eklundchristopher@gmail.com>
Signed-off-by: otfallen <f.fallen45@gmail.com>
Signed-off-by: Christopher Eklund <eklundchristopher@gmail.com>
2012-09-29 22:57:14 +00:00
otfallen 3b7ad41740 Spare a call yeye 2012-09-29 16:48:01 +00:00
otfallen e1900bdf9a binarytree: type fix 2012-09-28 07:24:49 +00:00
otfallen 3902490d6b Minor changes 2012-09-24 13:59:23 +00:00
otfallen 4d6057ffbe Yet another set of fixes 2012-09-24 12:11:01 +00:00
otfallen 7f6b204ded tiny perf fix 2012-09-23 01:19:12 +00:00
Eduardo Bart 8f9d7593d6 Merge map branch 2012-09-20 18:45:43 -03:00
otfallen fe3a751ffa Fixes to creatures 2012-09-20 23:23:10 +00:00
otfallen baceba74b9 Minor changes 2012-09-19 07:13:45 +00:00
otfallen 4d0725e876 Fix creature outfit
typeex wasn't being treated right; the outfit category was supposed
to be an itemid and the aux id should be set to the item id of the
outfit.

Signed-off-by: otfallen <f.fallen45@gmail.com>
2012-09-18 09:14:55 +00:00
otfallen 1156059af1 Bind missing C++ functions into lua
Signed-off-by: otfallen <f.fallen45@gmail.com>
2012-09-18 05:23:31 +00:00
otfallen 68d2347ee5 Fix creatures not being cleared at exit (caused a segfault).
Signed-off-by: otfallen <f.fallen45@gmail.com>
2012-09-17 02:29:54 +00:00
otfallen a40594752d Fix segfault on exit cause by creatures not being cleared. 2012-09-17 02:15:46 +00:00
otfallen bfa0844de1 TiXmlElement can already Set integer attribs. 2012-09-15 05:05:45 +00:00
otfallen b7721f6856 Tiny fix to UICreature 2012-09-15 05:00:56 +00:00
otfallen eb7a11158a XML saving and minor fixes + code refactoring.
Signed-off-by: otfallen <f.fallen45@gmail.com>
2012-09-14 21:39:10 +00:00
otfallen d429e385bb Remove old useless functions. 2012-09-02 19:31:50 +00:00
Henrique Santiago 23097980a3 Fix scrollbar slider move, outfit exact size, charlist focus 2012-08-31 20:33:51 -03:00
Henrique Santiago 18a0d7ab94 Fixes to horizontal scrollarea, improve charlist flexibility 2012-08-31 01:56:10 -03:00
Henrique Santiago c517f7b745 Add/get table functions implemented on ext charlist 2012-08-30 02:59:27 -03:00
Eduardo Bart d98f6f7673 New version 0.5.3 2012-08-29 19:09:32 -03:00
Eduardo Bart 79102f2275 Add extended opcode patch for tfs under tools/ 2012-08-29 16:29:18 -03:00
Eduardo Bart 91237e82d5 Fix issue #82 2012-08-29 12:43:50 -03:00
Eduardo Bart 9bd983ab51 Fix silly for 963 and improve walk 2012-08-29 12:41:04 -03:00
Eduardo Bart 97e1c9d5a9 Support for protocol 963 2012-08-29 12:09:16 -03:00
Henrique Santiago 0c5479b031 Spinbox changes 2012-08-27 18:56:05 -03:00
niczkx e5df872600 Move load creatures functions from map and bind them to singleton class g_creatures 2012-08-26 18:44:46 +00:00
Eduardo Bart 4bac36d3bc Implement new cool features
* Implement walk booster (dash) as an option in settings menu
* Dash is smarter (can pre-animate)
* Implement smart walking (walk in diagonal when holding two arrow keys)
* Implement ping meter for all protocols
* Ping meter uses uses real ping packet for 9.6 and walk for others
2012-08-25 16:11:54 -03:00
BeniS 0763b266d5 Some more UI updates and fixes.
* Added UICreatureButton class for handling/replacing "battle buttons" (can now be used in other modules).
* Added the ability to use items on creatures via the battle window.
* Some minor cosmetics.
2012-08-26 04:05:33 +12:00
Eduardo Bart 143121b77d Fix getDisplayHeight 2012-08-25 00:07:43 -03:00
Eduardo Bart 2525940e49 Fix chamaleon offset 2012-08-24 20:06:45 -03:00
Henrique Santiago beb04d8d8e Fix container bug, miniwindow pos, creature skulls outsite map bound 2012-08-24 19:59:46 -03:00
Henrique Santiago f97fa65d37 Many UI fixes. 2012-08-24 05:18:15 -03:00
Henrique Santiago 0c18e4ff28 Add some extra inventory slots, fixed ext protocol bug 2012-08-23 20:29:05 -03:00
Eduardo Bart e25bd7fe54 Fix OpenGL ES compilation 2012-08-23 12:37:26 -03:00
Eduardo Bart 949cfd5d31 update version 2012-08-23 12:22:49 -03:00
Henrique Santiago a306027cec Fixed skins path 2012-08-23 04:17:38 -03:00
Eduardo Bart bdbce01c97 Add uid param to stats module 2012-08-22 22:50:42 -03:00
BeniS ecd1ec5c0d Some overall fixes:
* Fix to market constraints.
* Fixed bug with skill percent not rounding.
* Dereference textEdit variable properly.
* Fix to the outfit window regarding mounts.
* Added enableResize to UIMiniWindow.
* Some minor edits.
2012-08-23 02:21:02 +12:00
Henrique Santiago 05fcf740b4 Stats module 2012-08-22 05:51:31 -03:00
Eduardo Bart 64d607b59e Fix issue #77 and improve findPath 2012-08-21 23:10:56 -03:00
Eduardo Bart 3d7e80ea7a Improve creature attack click 2012-08-21 21:27:57 -03:00
Eduardo Bart ea4dd2f8e6 Support for compressed textures 2012-08-21 08:09:48 -03:00
Henrique Santiago 2142ee765d Fix issue #21, but miniwindows can be a lot smarter 2012-08-21 02:35:20 -03:00
Eduardo Bart c185e709b3 Fix regressions 2012-08-21 00:36:14 -03:00
Eduardo Bart 66760656e9 Fix rare stackpos bug caused by chameleon rune 2012-08-20 22:02:55 -03:00
Henrique Santiago b39623d437 UIGameMap allow clicking in black 2012-08-20 22:03:30 -03:00
Eduardo Bart ddd3f84ad7 Many fixes in win32 platform 2012-08-20 18:53:38 -03:00
Henrique Santiago d1d8b79edc Fix issue #73 2012-08-20 19:50:18 -03:00
Henrique Santiago ac8d6891ca Polish interface, pt translations 2012-08-20 18:58:43 -03:00
BeniS 1d20cc9e4b Finalized the mount system and the recently new skills/stats.
* Added mount options to the thing menu.
* Reworked the mounting/dismounting.
* Fixed up some skill module bugs.
* Added alerts to stats like health, mana, capacity, and regeneration time (need to revise this one as it currently has no maximum).
2012-08-21 00:28:19 +12:00
Eduardo Bart f4cc942c85 Fix some graphics issues with old drivers 2012-08-19 22:38:43 -03:00
Eduardo Bart b349ff2620 Implement reverse otb items table 2012-08-19 18:49:24 -03:00
niczkx 0af783b5cf Fix OTBM saving 2012-08-19 22:30:49 +00:00
Eduardo Bart 1c69379b8d Fix compilation with OpenGL ES 2.0 2012-08-19 11:48:09 -03:00
niczkx 6d039ade67 revert last change (better fix) 2012-08-19 17:27:48 +00:00
niczkx a9fad4751f Fix segfault on exit 2012-08-19 17:20:20 +00:00
niczkx 1ed95b6120 More work on OTBM/OTB/XML 2012-08-19 15:41:03 +00:00
BeniS 8cd8829048 Some more on new skills/stats.
* Fixed updating issue.
* Fixed refreshing issue.
2012-08-19 23:03:44 +12:00
Eduardo Bart fdffa365b9 Oops 2012-08-19 06:51:16 -03:00
Eduardo Bart ad0ed2b1a9 Bind spell functions 2012-08-19 06:46:24 -03:00
BeniS 367955615e Minor fix for recent skill changes. 2012-08-19 20:08:20 +12:00
BeniS 4ce9c921c1 Previous commit and this commit should finish #58 2012-08-19 13:40:04 +12:00
BeniS d237087718 Added new stats to the skills module, fixed minor market error.
* Added Offline Training information.
* Added Regeneration Time information.
* Added Speed information.
* Added base stats/skills information (will show the players increase in a skill e.g. magic level 43 = 40 + 3 bonus from an item).
* Fixed the game feature constants in const.lua.
* Fixed a market error when logging out.
* Added removeTooltip function.
2012-08-19 13:19:43 +12:00
Eduardo Bart 73acc68e50 Fix compilation for ubuntu 2012-08-18 15:53:04 -03:00
Eduardo Bart 31da6dc611 Force usage of boost 1.50.0 2012-08-18 14:53:40 -03:00
Eduardo Bart 5e3882f87a Add libgit2 library, new mingw32 libraries will be uploaded soon 2012-08-18 14:08:05 -03:00
Eduardo Bart 356368ddae Restore minimap saving 2012-08-18 07:34:15 -03:00
Henrique Santiago ab7400c51d Progress on issues #60, #24, #21 2012-08-18 02:04:15 -03:00
Eduardo Bart 0bb991e14e Fix auto chase override 2012-08-18 00:30:40 -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
Eduardo Bart a91b7ed6be Adjustments in attack/follow algorithm 2012-08-17 14:43:30 -03:00
Eduardo Bart 3c26555255 Fix stackpos bug again 2012-08-14 20:14:14 -03:00
Henrique Santiago e244e1975d Format name as a feature, do not connect if dont have dat/spr 2012-08-14 20:58:48 -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 24b60bec2e support for protocol 961 2012-08-10 01:01:12 -03:00
Eduardo Bart 608b8f8b44 Fix a warning in clang 2012-08-10 00:48:34 -03:00
Henrique Santiago 47f0d7f3a6 Fix to creature name formatting and scrollarea maximum option 2012-08-09 21:36:52 -03:00
Eduardo Bart 10c564f90e Fix regression in walk paralyze 2012-08-09 00:51:13 -03:00
Henrique Santiago b5cb4e2c93 Fix battle filter, fix walk issue, try logout when force exit 2012-08-08 16:49:02 -03:00
Henrique Santiago 56817a8678 Changes to battle windows, removed duplicated translations 2012-08-08 16:17:16 -03:00
Henrique Santiago 16a3dd2b7e Remove ; and little fix to MiniWindow 2012-08-08 11:24:59 -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
Eduardo Bart dfff05e6e2 Update otclient version 2012-08-08 00:19:41 -03: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
Henrique Santiago 0e67bd97a5 Moved some talk code to lua 2012-08-07 13:33:17 -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
BeniS bd61a89675 Some fixes with layouts, NPC trade window, and market. 2012-08-07 11:13:33 +12: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
Eduardo Bart fa27210d7f Remove lockWalks from game 2012-08-03 12:12:18 -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 325b711181 Fix some issues in battle 2012-08-03 02:58:48 -03:00
Eduardo Bart f397e6319c Reimplement battle using new events, no more scheduleEvents 2012-08-03 02:05:09 -03:00
Eduardo Bart 06388c5673 Fix compability with some servers fly systems 2012-08-03 00:05:29 -03:00
Eduardo Bart ea2fa55a25 Fix protocol 860 stackpos regression 2012-08-03 00:05:29 -03:00
Eduardo Bart 11387eb08f Fix floor change stackpos bug? 2012-08-02 11:47:32 -03:00
Eduardo Bart a64ebc7e7b Stop walk animation after changing floors 2012-08-02 10:39:08 -03:00
Eduardo Bart b9dfc7784c Fixed push of creatures in 9.6 2012-08-02 09:13:01 -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
Eduardo Bart 57785d2001 More walk changes and creature events
Improve walking, no more random cancelWalks
Add 3 new creatures events onAppear/onDisappear/onWalk
Add algorithm that calculates walk ping
Fix paralyze animation while walking
2012-08-02 05:17:46 -03:00
Henrique 8a5195430a Add SQL extension, still in early stage 2012-08-01 22:56:50 -03:00
Eduardo Bart c9eaa73df5 Improve clicking on walking creatures 2012-08-01 22:47:55 -03:00
Eduardo Bart daea7cab65 Check walk collisions in client side 2012-08-01 22:34:19 -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
BeniS cadf07974a Fix to market module reloading, Changed the walk lock period when colliding with a block path object. 2012-08-02 11:04:29 +12: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
Eduardo Bart 1dc7dc0cfc Fix tile skipping in 9.6 2012-07-31 19:29:33 -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 90312965bc Avoid spr loading freeze when logging 2012-07-31 01:09:55 -03:00
Eduardo Bart 49a8c750f9 Fix opened channels saving 2012-07-31 00:53:15 -03:00
Eduardo Bart fbb3c9933a Fix audio stopping on buffer underruns 2012-07-31 00:12:04 -03:00
Eduardo Bart c879ed8642 Prevent a protocol warning caused by a server side bug 2012-07-30 22:03:34 -03:00
Eduardo Bart a1fb373b1b Revert protocol bug added in lasts commit 2012-07-30 21:08:32 -03:00
Eduardo Bart 3db0ae06a7 Add swedish language 2012-07-30 20:52:31 -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 8e437e27c7 Fix walk interval calculation 2012-07-30 11:03:58 -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 52f81c53f9 More fixes for 9.6
And add ping bindings :D
2012-07-30 07:59:08 -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 29a4d467af Optimize map tile storage
Tiles are stored in blocks of 32x32 now, improving tile allocation and access speed
2012-07-29 03:23:27 -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 3ca6494343 Remove unused func 2012-07-28 20:45:16 -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
niczkx 26e20da938 Fixes to creatures 2012-07-28 02:06:16 -06:00
Eduardo Bart a88e9f9e0f Avoid crashs of invalid item ids in otb files 2012-07-27 18:25:41 -03:00
Eduardo Bart 564463fa01 Minimize talk messages spam on screen 2012-07-26 19:56:46 -03:00
Eduardo Bart d2b85bdba8 More modules fixes 2012-07-26 19:13:47 -03:00
Eduardo Bart 5f1e58c138 Fix sending os type, bind some functions 2012-07-26 13:41:13 -03:00
Eduardo Bart f5c97c8e8b Remove protocol config from cmake 2012-07-26 12:58:35 -03:00
Eduardo Bart 9ad9d88e10 Fix npc trade and npc chat 2012-07-26 12:42:15 -03:00
Eduardo Bart 0a49f58e50 Fix crash when InputMessage is too large 2012-07-26 11:03:57 -03:00
Eduardo Bart 619305cc6d Fix creatures with item outfits 2012-07-26 10:48:35 -03:00
Eduardo Bart 0eb7c166c0 Fix console blue messages 2012-07-26 09:19:30 -03:00
Eduardo Bart 657640c270 Mounts
Show creature mounts
Fix outfit window
Fix some 9.6 protocol issues
2012-07-26 09:19:30 -03:00
Eduardo Bart 36c029fc69 Multiprotocol 8.1-9.6 finally working
Still have many minor issues, tests are needed
No recompilation needed anymore
9.60 messages is not fully implemented
2012-07-26 06:12:20 -03:00
Eduardo Bart 98c279c10b Fix a stackpos bug in 9.6 2012-07-26 03:19:22 -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
BeniS 19dd96fd02 Market item filtering improvements and other some minor improvements
* Can now filter market items by vocation, level, slot type, and depot items.
* Added new bitwise lib for handling flag operations.
* Can now get/set local player vocation/premium (TODO: spell list).
2012-07-24 03:11:53 +12: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
Eduardo Bart 253a22db3d Bind Creature::getDirection 2012-07-22 19:29:21 -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
BeniS 483487ab09 More work on Market functionality and UI
* Now loads all market items.
* Can filter market items.
* Will load market offers on items.
* Edited some UI images.
2012-07-21 06:20:06 +12:00
Eduardo Bart 49f4c1c94b Fix market tradeAs/showAs reading 2012-07-20 03:32:17 -03: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
BeniS 6293a49f8f More on Market (far from done), Minor Fixes, Edited Outfits Module, Some Cosmetics.
* Started building the market UI.
* More work on the market functionality.
* Fixes to the market protocol. (Known issue: if I use safeSend method from Market (like so: MarketProtocol.send~) is thinks it is a bot).
* Fixes to the market offer class.
* Outfit window will no longer display the mount box if you are using protocol < 870.
* Added getFeature to playermount module.
* Added isMarketable and getMarketData to the lua binding.
* Added lua casts for MarketData.
* Fixed typo in the module manager.
* Added new 'light flat panel' for more variation (can change later) will require some graphics for market.
* Added new functions to table lib.
* Fixed some styling issues from previous commits.
2012-07-20 06:54:24 +12: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 e2921c6407 Optimize map view zoomout performance 2012-07-19 03:36:04 -03:00
niczkx aef3a5b8db more work on xml stuff (prolly done for today) 2012-07-18 16:36:46 +02:00
niczkx 5015ced156 update houses/monsters/items xml readers 2012-07-18 13:46:58 +02: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
Eduardo Bart cf9f57736f More multiprotocol progress 2012-07-18 03:04:57 -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
BeniS 6fc11d2fa9 Forgot to make private functions local. 2012-07-18 11:31:32 +12: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
BeniS 09425eba31 Fixed crash issue with outfit window with protocols <= 860 2012-07-17 02:39:08 +12:00
BeniS 92e3c2cbd6 Fixes to mounting, outfit randomizing, and added creature getSpeed to the lua binding. 2012-07-16 11:08:27 +12:00
Eduardo Bart f47a947bf3 Fixes for last commits 2012-07-15 11:29:05 -03:00
Eduardo Bart 7a08fed689 Optimize overall memory usage
* Fixes in otbm loader
* Rework BinaryTree
2012-07-15 10:30:39 -03:00
BeniS 03ca792dbd * Missed in last commit. 2012-07-15 23:58:51 +12:00
BeniS 81e6cf210e Merge remote-tracking branch 'origin/master' 2012-07-15 23:50:36 +12:00
BeniS 5520501673 Implemented the mount interface, Fixed some interface stuff, Some cosmetics, and Updated the outfits window
* Added new arrow buttons.
* Fixed the vertical separator.
* Added new game_playermount module to handle player mounting.
* Moved the battle icons to /images.
* Outfit window accommodates for mounts, loads addons more efficiently and keeps addons set on update, added new Outfit.randomize function that allows you to randomize your outfit colors, and set up a new layout.
2012-07-15 23:49:28 +12:00
niczkx 3db6217b7c trolol 2012-07-15 20:54:44 +03:00
Eduardo Bart 1b0c527ad6 Fix Thing::getTopThing 2012-07-15 03:17:31 -03:00
Eduardo Bart 98c4240446 Changes for the mapeditor 2012-07-15 03:17:31 -03:00
niczkx 7ffb760368 trolo 2012-07-15 21:12:03 +03:00
Eduardo Bart ec5106e7ce Fix skin texture caching 2012-07-14 18:30:00 -03:00
Eduardo Bart 36e5a5a92f Remove if spaces 2012-07-14 14:29:42 -03:00
Eduardo Bart 70115e391d Merge fallen changes 2012-07-14 14:22:18 -03:00
niczkx 5e0f18ab5b missing files 2012-07-14 16:34:24 -07:00
niczkx 992cbf9d1d mapeditor changes 2012-07-14 16:20:38 -07:00
Eduardo Bart e3298d561c Rework application class and framework
Make otclient's framework flexible enough to run console apps like
servers, so this mean is possible to build otclient versions without
graphical interface and use it's framework to code servers
2012-07-13 22:23:11 -03:00
Eduardo Bart 29ab28065b Fix alt tab issue on win32 2012-07-13 00:56:56 -03:00
Eduardo Bart c0c2411854 Improve minimap 2012-07-12 16:16:23 -03:00
BeniS 8850528091 Updated Top Menu, Health Info, Combat Controls, Console (Channels), Game Toggle Buttons, Minimap Layout, Game Interface Prompts, and Creature Draw Info.
* Added new left and right game button panels.
* Relocated main game toggle buttons to the right side of the screen to make it easier to toggle miniwindows.
* Added table.empty(t) function to table lib.
* Renamed module game_healthbar to game_healthinfo.
* Combat controls now save per character (e.g. Fight mode, chase mode, safe fight mode)
* Last channels open now save per character.
* Fixed typo in containers.lua.
* Added logout prompting window message when you logout via the logout button.
* Added exit promting window message when you attempt to exit the client.
* Repositioned some minimap buttons.
* Fixed so when creatures health percent is < 1 it will not draw the creature information.

Known Issues:
* If you move a container widget into the map rect if you move an item onto itself it will allow this to execute still dropping the item on the ground.
* The server is calling to open channels after onGameStart is executed causing it to focus the last tab opened. Fix: Don't save channels to the settings that are opened by the server.
2012-07-13 04:45:22 +12:00
Kamil 8f492f7e06 Fixed bug with adding Vip from console or map, who is already on viplist. 2012-07-12 13:21:51 +02:00
Henrique 9523b5cde5 Changes to last commit. Maybe add FW_LUA, FW_SOUND, etc definitions further 2012-07-12 00:55:18 -03:00
Henrique 962e9c7d16 Allow logger usage on console applications 2012-07-12 00:21:26 -03:00
kilouco aaf3351e87 Fixed so Shift-Tab functionality works properly. 2012-07-10 23:18:33 -03:00
Eduardo Bart d39ca7de10 Restore periodicalEvent function
* and typo fixes
2012-07-10 14:36:18 -03:00
Eduardo Bart 77648a2ffa Fix compilation using static libs on linux 2012-07-09 20:28:48 -03:00
Eduardo Bart e7691b873b Add error code to onError protocol event 2012-07-09 19:45:34 -03:00
Eduardo Bart a1644cad29 Minor g_app lua binding fix 2012-07-09 13:36:46 -03:00
Eduardo Bart f215b206b1 Fix issue #25 2012-07-09 10:38:03 -03:00
Eduardo Bart 31612036fb Fix issue #23 2012-07-09 10:30:41 -03:00
BeniS 902ce06e88 Fixed an issue with the battle list filter.
More work on the minimap, interface changes, fixed direction controls, fixed reseting, fixed some draw things (needs some more work to finish).
Fixed a bug in the battle list causing Battle.onFollow(creature) to execute when there was no follow.
2012-07-09 09:19:02 -03:00
otfallen c8d9833444 woops, added new type to gitignore aswellas commit changes to init.lua 2012-07-09 08:56:18 +02:00
otfallen 42971b10f8 backing up at OTBM loading, if someone can continue working on it until I'm available again, I would appreciate it much, here is current progress: http://pastebin.com/qEfC9ftv 2012-07-09 08:46:11 +02:00
Eduardo Bart 1e8491cdcd fix possible compile issue in Os X 2012-07-08 14:05:29 -03:00
Eduardo Bart 4ac3ec8344 Minor fixes for releasing otclient 2012-07-08 13:46:09 -03:00
BeniS 4453242bee Adjusted chase modes to work correctly, added new option for auto chase override. Fixed NPC speak messages to appear in the correct position. 2012-07-08 02:09:50 +12:00
Henrique Santiago 6a85c31a77 Some particle stuff, far from done 2012-07-06 02:01:13 -03:00
Eduardo Bart 8cc14c2d2d Save graphics options 2012-07-05 15:49:10 -03:00
Eduardo Bart 6bce0bd680 Imrove lua engine
* Allow bound C++ functions to return multiples values to lua with tuples
2012-07-05 09:38:48 -03:00
Henrique Santiago 0b98dca50f Changes to autowalk position on different floors, move its functions to game interface 2012-07-05 02:40:31 -03:00
Eduardo Bart 2c6b83b476 Fix issue #14, pre animate autowalks 2012-07-05 01:10:01 -03:00
Eduardo Bart 71bed49f80 Fixed issue #15 that caused lua stack to grow indefinitely 2012-07-04 09:10:05 -03:00
Henrique Santiago cfd31ef4c0 Change uiitem draw 2012-07-02 17:30:15 -03:00
Eduardo Bart 16d4729f06 Check wrong slot/skill to avoid leaks 2012-06-25 20:48:36 -03:00
Eduardo Bart 472e78d368 Make C++ exception works for lua
* Throw exception when open a file fails
2012-06-25 19:42:38 -03:00
Eduardo Bart 98a1b611bf Refactor for documentation 2012-06-25 19:19:17 -03:00
Eduardo Bart 2c7ae6e521 Now otb reader is properly working 2012-06-24 12:44:33 -03:00
Eduardo Bart e65a8456e9 Add binary tree class for reading otb 2012-06-24 10:06:02 -03:00
Eduardo Bart dbf5e8266b Rename crash file 2012-06-24 10:06:02 -03:00
Eduardo Bart eec6114b2d Optimize lua object push
* Optimize position hash
* Fix minimap reload
2012-06-24 08:20:39 -03:00
Eduardo Bart 79532cd612 Optimize minimap save/load 2012-06-23 18:30:54 -03:00
Eduardo Bart fcd6d3cfe9 Minimap fixes
* Fix infinite loop while loading minimap
* Fix errors in FileStream class
* Remake OTCM map format
* Fixes in UIMap
2012-06-23 12:03:28 -03:00
Eduardo Bart 4515e360e4 A lot of cmake changes, fix compile on win32 2012-06-22 16:04:03 -03:00
Eduardo Bart 139f389d88 fix infinite loop while saving empty minimap 2012-06-22 14:26:12 -03:00
Eduardo Bart 0c14a8e602 fix minor cmake issue 2012-06-22 13:02:16 -03:00
Eduardo Bart 170236f822 add missings files 2012-06-22 02:28:13 -03:00
Eduardo Bart d39cf361ab improve minimap 2012-06-22 02:26:22 -03:00
Eduardo Bart aed779a2c8 doc and luabinder changes 2012-06-22 00:14:13 -03:00
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 6b0d922dd9 missing files 2012-06-21 04:39:40 +02: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 0a6470eac4 ... 2012-06-14 20:51:11 -03:00
Eduardo Bart fb36ff2da3 fix freezes from server talks spam 2012-06-14 19:27:57 -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 72f569c250 improve walk animation on low end hardware 2012-06-11 16:03:36 -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 db59c73ed2 changes to progressrect 2012-06-10 04:46:00 -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
Henrique Santiago 587db0d89f changes to uiitem 2012-06-08 00:02:06 -03:00
Eduardo Bart 486837a61d minor fixes
* change chase mode while walking and attacking
* avoid lua errors in frame counter when starting
2012-06-07 08:52:17 -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
Eduardo Bart 2dde63d2bc more changes in container API 2012-06-06 00:44:17 -03:00
Henrique Santiago 86cade0aa9 waiting list, u16 effects feature, protocolsend uses clientversion 2012-06-05 20:46:36 -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 8ef4716d71 some APi changes in Container 2012-06-05 14:00:39 -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
Henrique Santiago fda3ae6809 fix scroll, container item size, tradewindow scroll, questlog window alignment, stop attacking same creature 2012-06-03 17:05:35 -03:00
Eduardo Bart e4cb9b27db fix crash in grid layout 2012-06-03 16:42:22 -03:00
Eduardo Bart 250e9ac238 more autowalk rework 2012-06-03 16:28:17 -03:00
Eduardo Bart 05d6e8c3e1 autowalk improvement, but still needs to be reworked 2012-06-03 12:49:48 -03:00
Eduardo Bart d49cad31e2 fixes in EGL platform 2012-06-03 11:10:34 -03:00
Eduardo Bart 3a6f326a8a attack moving creatures 2012-06-02 21:00:09 -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 4c143f4a33 fix splash colors regression 2012-06-01 22:52:40 -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
Henrique Santiago 2676eb4da3 fix crash with outfits 2012-05-18 22:41:22 -03:00
Henrique Santiago b0fd5b3ec8 removed extended ifdef, its now activated serverside 2012-05-17 12:24:41 -03:00
Henrique Santiago 4f90783789 extended opcode disabled by default. current locale is sent to server on login, bot protection exception 2012-05-16 17:09:37 -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 b9b9e47bba isOnBotton draw changes, fixed items like mountains 2012-05-14 01:33:27 -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 b7a70dd1e3 protocol compability fixes 2012-05-12 17:16:33 -03:00
Eduardo Bart ffa94f10b6 fix wrong RSA 2012-05-12 11:45:20 -03:00
Eduardo Bart ee5b00c1a6 fix compile for 862 2012-05-12 11:10:47 -03:00
Eduardo Bart 469e0bbbca make dat reader more compatible with malformed dats 2012-05-12 09:30:51 -03:00
Eduardo Bart ae2a476872 more bindings/sends for 870-953 2012-05-12 08:55:22 -03:00
Eduardo Bart fa9c942471 basic protocol 953 support, logging in real tibia! 2012-05-12 01:52:16 -03:00
Eduardo Bart abbd15b1c2 basic protocol 910 support 2012-05-11 22:44:13 -03:00
Eduardo Bart cc261931be more otserv compatibilities fixes 2012-05-11 18:40:40 -03:00
Eduardo Bart d586bb5e93 some protocol changes for more compatibility 2012-05-11 16:39:54 -03:00
Eduardo Bart 5584bfdd99 support for protocol854 2012-05-11 15:35:17 -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 f9bae92bff fix walk bug 2012-05-11 06:17:46 -03:00
Eduardo Bart 3f2071d097 fix possible walk crash 2012-05-11 06:17:46 -03:00
Eduardo Bart 9abac474dd style adjustment and fixes
* style adjustments, now window and button style
* fix bug when logging on a tile with too many creatures
* remove deprecated onLogin and onLogout events
2012-05-11 06:17:46 -03:00
Henrique Santiago a20a56a66c tile max things 2012-05-10 09:09:44 -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 606fc38109 fixes and missing file
* fix walking on tile that has too many creatures
* add missing file
* some walk rework
2012-05-09 19:19:05 -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 4f08a288ca fix compile error, rebind trade functions 2012-04-30 23:59:17 -03:00
Eduardo Bart 2f0a151fed questlog module complete 2012-04-30 23:00:07 -03:00
Eduardo Bart f290d821f1 textbooks module complete 2012-04-30 21:53:02 -03:00
Eduardo Bart 00740b56f3 begin playertrade, questlog and textbooks modules 2012-04-30 21:20:27 -03:00
Eduardo Bart 5b352ac999 add missing lua functions 2012-04-30 19:30:54 -03:00
Eduardo Bart 42ba5b7a2a bind rule violations/bug report functions 2012-04-30 19:25:43 -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 dc0ade2bd0 fix teleport incompability with some servers 2012-04-28 23:02:50 -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 d3665efbb2 fix some items not being rendered in npc trade 2012-04-28 12:35:15 -03:00
Eduardo Bart 53bbde0b48 add missing protocol 8.6 optbyte 2012-04-28 12:12:02 -03:00
Eduardo Bart 47bd619273 more fixes in count/subtypes 2012-04-27 21:44:55 -03:00
Eduardo Bart 519a52910e fix in npc trade 2012-04-27 20:51:46 -03:00
Eduardo Bart f589e6a786 fix in npc trade 2012-04-27 20:47:08 -03:00
Eduardo Bart b75483e9bf fixes
* fix filestream read
* fix transparent minimap
2012-04-27 19:17:51 -03:00
Eduardo Bart d3c484938d why so many readme updates? 2012-04-27 06:59:32 -03:00
Eduardo Bart 7b81a0cf3b fix possible crash when trading and using containers 2012-04-27 04:28:06 -03:00
Eduardo Bart ceb051cb75 finally reloadable vip, skills, inventory, chat and minimap 2012-04-27 03:30:54 -03:00
Eduardo Bart d0b839a4eb fix warnings and some reloading issues 2012-04-27 01:54:14 -03:00
Eduardo Bart 34091bc48e implement all needed tr() for localization
* implement some pt-BR translations
* remove legacy about module
2012-04-26 16:54:16 -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
Henrique Santiago 60495174a4 bot traceback, moveup function, chat setting default ongamestart 2012-04-25 21:15:48 -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
Henrique Santiago dcefeb134c remove print, fix creature name position 2012-04-21 21:45:05 -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 353aa5215e fix drawing of 2x2 items on UIItem 2012-04-09 16:33:40 -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
AndreFaramir 9c038e2f39 implement npc trade interface 2012-04-08 17:13:51 -03:00
Eduardo Bart 92bd1aba54 optimize graphics performance 2012-04-08 16:31:36 -03:00
Henrique Santiago c93732a44a close channel event 2012-04-08 01:13:52 -03:00