Commit Graph

2311 Commits

Author SHA1 Message Date
Ahmed Samy df3546b073 lua: now we have a function to static allocate an array
lua_newtable() definition:
	#define lua_newtable(L) 	lua_createtable(L, 0, 0)

This simply allocates space for 0 fields, meaning, if we push any
values into this array, it will re-allocate the array, which is bad.

This function statically allocates an array, so it's ready to have
X fields into it.

Performance tests:

lua_newtable
1428161
1426992
1413513

lua_createtable
2004544
1974117
1957533

These tests were done on an AMD 8350fx CPU, single thread used.

narr: This is for fields that just have an index, e.g. arr[0] etc.
nrec: For fields which needs like arr.a, arr.b etc.

This is how many times each of the functions can run per second, as
you can see about 1.7x the calls to lua_newtable.

All credits goes to @dalkon, he was too lazy to do it by himself, and
asked me to do it for him.
2013-12-21 16:13:24 +02:00
Ahmed Samy 24e26e190b Also unbind g_minimap.updateTile 2013-12-18 04:40:53 +02:00
Ahmed Samy ad7cda534d Fix minimap tile update for item removal 2013-12-18 04:40:52 +02:00
Sam 863bece70b VC12 fixes by @dalkon 2013-12-15 19:09:03 +01:00
Ahmed Samy 22f97aa00b More binds to lua 2013-12-15 04:59:45 +02:00
Ahmed Samy e32607b05c Tiny fixes 2013-12-15 04:33:43 +02:00
Ahmed Samy 1790eee1c6 Add selection to tile 2013-12-14 23:06:52 +02:00
Ahmed Samy ec2518525a Add more tile flags to be checked for 2013-12-14 19:44:54 +02:00
Ahmed Samy eb4fb4ff41 Animations are now optional
The default behaviour is still there though.
2013-12-14 18:48:18 +02:00
Ahmed Samy 4f997a3826 Only request tile cache to be updated once for both x & y 2013-12-12 16:24:50 +02:00
Ahmed Samy c54015a60d Fixup movePixels a little bit
Thanks to @dalkon for dis.
2013-12-12 16:21:22 +02:00
Ahmed Samy 57c432d3ea Increase maximum move offset to be 64 instead of 32 2013-12-12 03:23:13 +02:00
Ahmed Samy bd8c883e13 Take out debug message 2013-12-12 02:53:57 +02:00
Ahmed Samy b5c3b37b3c Tiny fix for movePixels 2013-12-12 02:46:20 +02:00
Ahmed Samy ece6507df2 Bind g_minimap.updateTile to lua
This is needed to update tile removals from minimap widget.
2013-12-11 19:08:12 +02:00
Ahmed Samy 04515ffbb8 Fix map move pixels function
Thanks to @dalkon for this.
2013-12-11 18:36:31 +02:00
Ahmed Samy ed24a0735a Bind {un,}lockVisibleFloor to lua 2013-12-09 20:15:39 +02:00
Ahmed Samy 2498129ff3 mapio: don't add saved with line in description 2013-12-07 02:52:51 +02:00
Ahmed Samy 066638e7c0 mapio: don't add description twice 2013-12-07 02:27:21 +02:00
Ahmed Samy 95610de5f3 bind set{Width,Height} of g_map to lua 2013-12-07 02:00:31 +02:00
Ahmed Samy 9154c0a678 mapio: fix load on new maps 2013-12-06 23:08:08 +02:00
Ahmed Samy 772ec208c0 don't throw error on fail 2013-12-05 22:23:46 +02:00
Eduardo Bart 7914832be9 Update readme 2013-12-04 14:00:09 -02:00
Sam 99500c9c91 Protocol 8.40-.42 fixes, closes #272 2013-12-04 16:02:51 +01:00
Ahmed Samy b9b9a32b83 Spawns: add function to find a spawn to place a creature on 2013-12-04 14:30:26 +02:00
Sam f615b80fbc Navigation for large tab amounts, closes #211 2013-12-03 20:25:56 +01:00
Henrique Santiago 319f32cdaa Merge pull request #387 from conde2/master
Fix compilation under MSVC
2013-11-30 19:52:57 -08:00
conde2 ba091c9f5b Indentation 2013-12-01 01:30:48 -02:00
conde2 3288711d16 Mistake 2013-12-01 01:25:34 -02:00
conde2 8b0509a5c3 Try to fix compilation 2013-12-01 01:19:29 -02:00
conde2 d7612e9304 Little mistake 2013-12-01 01:12:06 -02:00
conde2 4dcb30110f Use of clamp 2013-12-01 00:48:36 -02:00
conde2 7ff73d1064 Fix indentation 2013-11-30 23:34:21 -02:00
conde2 ca2fe9cf45 Fix compilation under MSVC
Use template for std::min and std::max
2013-11-30 23:08:43 -02:00
Sam b61f509755 Checkboxes fix 2013-11-19 14:54:17 +01:00
Sam ec012cb137 Fix 7.6 protocol issue / Typo 2013-11-19 01:09:31 +01:00
Sam 69ae324676 Tiny setPVPMode fix 2013-11-19 00:55:42 +01:00
Sam 4d656f8bd1 New pvp modes to combat controls 2013-11-19 00:50:00 +01:00
Sam c98439ae65 onOutfitChange fix 2013-11-18 23:18:48 +01:00
Sam 4f9f04206d Added enter / escape button to minimap flag window 2013-11-18 20:57:50 +01:00
Sam fc54a6e418 Full modal dialog functionality 2013-11-18 18:58:15 +01:00
Ahmed Samy 25d3019d1a force use of template version of std::min/max 2013-11-14 00:02:47 +02:00
Ahmed Samy 1711d8bdaf Revert "replace all std::min/std::max with just min/max"
This reverts commit 28d967ccce.
2013-11-13 23:53:54 +02:00
Ahmed Samy 28d967ccce replace all std::min/std::max with just min/max
This errors out in MSVC since the inclusion of winsock2.h, CL uses the
macro not the template version.
2013-11-13 23:48:10 +02:00
Ahmed Samy f02d5e7975 Merge https://github.com/BrunoDCC/otclient
# By BrunoDCC
# Via BrunoDCC
* https://github.com/BrunoDCC/otclient:
  Fix houses and monsters
2013-11-13 22:51:00 +02:00
BrunoDCC 4bfe9b640e Fix houses and monsters 2013-11-13 18:48:37 -02:00
Eduardo Bart ab1cc8c890 Update download links 2013-11-13 15:25:23 -02:00
Eduardo Bart d657a0482a Add download links to README 2013-11-13 15:17:38 -02:00
Eduardo Bart 8562d38ca4 Update make_snapshop.sh [2] 2013-11-13 15:09:33 -02:00
Eduardo Bart 28786a3570 Update make_snapshop.sh 2013-11-13 14:33:29 -02:00