summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2013-12-17Speed up of several procedures that rely on ERS, _mreallocz ('z'ero)shennetsind11-21/+60
Made Possible Thanks to the Woonderful Haruna! <3 Commit also fixes an inconsistency in the ERS, where it'd start with clear memory but would use garbage upon resizing, also implements a new ERS option that clears entries as soon as pass by ers_free, so that they'll be all shinny for when ers_alloc reuses them. Signed-off-by: shennetsind <ind@henn.et>
2013-12-16Introducing HPM Support for custom battle confsshennetsind5-3/+103
Special Thanks to Mhalicot. Signed-off-by: shennetsind <ind@henn.et>
2013-12-15Replaced pc->pc_has_permission/can_give_items/can_give_bound_items with ↵shennetsind16-111/+87
equivalent macros Because 2/3 jumps to perform such a operation is just awful Signed-off-by: shennetsind <ind@henn.et>
2013-12-14Replaced pc->get_group_level with a macro (pc_get_group_level)shennetsind10-65/+56
Because 2 jumps to get a single value is just awful. Signed-off-by: shennetsind <ind@henn.et>
2013-12-13Follow up b7171479shennetsind1-5/+5
Fixed couple intif.c interface members being called outside the interface Signed-off-by: shennetsind <ind@henn.et>
2013-12-12ensuring script_state is clear (as ers reuses memory).shennetsind1-0/+1
Signed-off-by: shennetsind <ind@henn.et>
2013-12-11modified second "infinity loop !" error so that its different from the firstshennetsind1-1/+1
and thus doesn't cause confusion (and it wasn't loop-related anyway). Signed-off-by: shennetsind <ind@henn.et>
2013-12-17HPM Hooks UpdateHercules.ws3-72/+42
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-12-17Fixed some additional linux warningsHaru1-4/+4
- Fixed some warnings we had missed. - Improved -W cflag detection routines. - Only use -Wshadow if it's actually useful. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Fixed several compiler warningsHaru45-618/+723
- Warnings detected thanks to Xcode's compiler settings (more strict by default) and clang, warnings mostly but not only related to data sizes on 64 bit systems, that were silenced until now by very lax compiler settings. - This also decreases by a great deal the amount of warnings produced by MSVC in x64 mode (for the adventurous ones who tried that) - Also fixed (or silenced in case of false positives) the potential issues pointed out by the (awesome) clang static analyzer. - Patch co-produced with Ind, I'm merging and committing in his place! Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Added support for non-aborting assertionsHaru3-41/+71
- Added Assert_ret, Assert_retv, Assert_retb, Assert_retr, working similarly to the corresponding nullpo_ functions. - Moved Assert-related macros to nullpo.h, since they share some functions. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Nullpo cleanupHaru3-285/+72
- Removed unused, nonportable nullpo checks with formatted message (related: eAthena r15245) - Converted nullpo_chk to a macro, to make it easier on the llvm static analyzer. - Added more details to the nullpo_info reports (related: eAthena r15246) - Ensured that the nullpo check macros evaluate their pointer argument once and only once, so that it's safe to use with expressions that assign values or have side-effects. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Changed plugin extension from .so to .dylib on OS XHaru1-1/+3
- No functional changes. That's just the correct OS X file extension for dynamic libs. Signed-off-by: Haru <haru@dotalux.com>
2013-12-11HPM Hooks UpdateHercules.ws1-60/+60
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-12-11Corrected some local 'mapindex' variables shadowing the global oneHaru15-41/+40
Signed-off-by: Haru <haru@dotalux.com>
2013-12-10Fixed 64b warnings on db2sqlshennetsind1-5/+5
Special Thanks to Haru! Signed-off-by: shennetsind <ind@henn.et>
2013-12-10Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind4-8/+9
2013-12-09Fixed some logic errorsshennetsind13-106/+126
Special Thanks to Haru Signed-off-by: shennetsind <ind@henn.et>
2013-12-09Fixed a crash when casting GN_SPORE_EXPLOSION on certain systems.Haru3-2/+3
- Follow-up to 44c33fda3614d588e6bf6cee1cf884e98f1531f0. - Also fixed some incorrect va_end calls that came up while debugging. - Special thanks to Ind for his help debugging the problem. Signed-off-by: Haru <haru@dotalux.com>
2013-12-08Follow up d4a58d24d6bcb23a995d62a3d9f9e7190c054b49shennetsind1-3/+1
Enabled plugin access to mapindex interface Signed-off-by: shennetsind <ind@henn.et>
2013-12-08HPM Hooks UpdateHercules.ws1-6/+6
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-12-08Fixed cell basilicashennetsind1-0/+4
which was broken 5 years ago in 13106, special Thanks to karazu, Angelmelody and kyeme. Signed-off-by: shennetsind <ind@henn.et>
2013-12-07Fixed angra manyu aspd base calcshennetsind2-5/+11
fixed as in, it now skips the thing entirely, matching official behavior and no longer affected by job-specific modifiers. Thanks to Yommy. Signed-off-by: shennetsind <ind@henn.et>
2013-12-06HPM: mapindex interfaceshennetsind14-194/+226
Signed-off-by: shennetsind <ind@henn.et>
2013-12-06Corrected some potential issues in the questlog systemHaru2-5/+6
- Should fixe bugreport:7888, thanks to rosfus http://hercules.ws/board/tracker/issue-7888-some-issue-crush-my-mapserver - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-12-05Follow-up to 6f55c00e72ca6db130a84fe92218f73a777428f4Haru1-2/+5
- Fixed a memory leak (bugreport:7885), thanks to rosfus http://hercules.ws/board/tracker/issue-7885-memory-leaks-found-at-20131205-20h31m31s-rev-13617/ Signed-off-by: Haru <haru@dotalux.com>
2013-12-05Fixed Bug 7879shennetsind1-5/+7
guild storage would remain locked when the operation failed, now it unlocks regardless of success. Special Thanks to GrumpyPanda http://hercules.ws/board/tracker/issue-7879-guild-storage-bug/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-05HPM Hooks UpdateHercules.ws3-0/+31
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-12-05Improved script builtin function parserHaru2-75/+87
- Removed duplicate code shared between script_hp_add and script_parse_builtin. - Improved error handling in script_hp_add to be on par with the script_parse_builtin version. - Added script->add_builtin function, providing a hooking point for plugins (i.e. text editor syntax definition generators) to obtain the builtin commands list. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-12-05Improved plugins MakefileHaru1-2/+11
- It is now possible to build a plugin without adding it to the Makefile, by using 'make plugin.my_plugin_name'. - To have it built through 'make all' or 'make plugins', it is still necessary to add it to the Makefile, as before. Signed-off-by: Haru <haru@dotalux.com>
2013-12-04Follow-up to 6e9c385b8fa2fbca97ca23e35f0b8e5dabd13526Haru5-27/+61
- Case-sensitive AegisName and Sprite ID lookups are now optional, controlled by the case_sensitive_aegisnames battle config flag (you can set it to "no" to restore the case insensitive behavior.) - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-12-04Fixed Bug 7883shennetsind1-1/+1
Special Thanks to Megasantos, Beret. Follows up 098dbcf672e04657553b9f1629550e6bc8771af3 http://hercules.ws/board/tracker/issue-7883-reloaditemdb/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-04Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind18-395/+702
2013-12-04Follow-up to 6f55c00e72ca6db130a84fe92218f73a777428f4Haru1-1/+1
- Fixed an issue that caused the quest list not to be sent to the map server. - Special thanks to Beret. Signed-off-by: Haru <haru@dotalux.com>
2013-12-03HPM Hooks UpdateHercules.ws3-43/+102
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-12-03Questlog fixesHaru14-332/+580
- Improved memory usage of the quest log system. (saves up to 75kB per online character). Fixes issue #133. - Fixed various issues with quest entries disappearing from characters without an apparent reason, or monster kill counters getting stuck - the issues were caused by a de-synchronization between the two parallel questlog arrays in map_session_data. - Added some code documentation. - Thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-12-03Corrected Steal Coin formulas and battle log messageHaru2-20/+20
- Updated to use official formulas from Aegis (for both success chance and stolen zeny amount.) - It now shows the correct stolen zeny amount in the battle log, rather than showing the skill level. - Made possible thanks to Yommy and Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-12-03Fixed Bug 7542shennetsind3-4/+15
replaced pc_isuseitem 90overweight error message by its official version, added invent-full check for when trying to open packages/boxes, and modified mail getAttachment to fail when over 90% weight. Special Thanks to kyeme. http://hercules.ws/board/tracker/issue-7542-bug-when-weight-90/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-02Fixed an uninitialized variable / broken code.Haru2-23/+22
- Follow up to c6c2ad187c386d8d27d3336dcbdd5a92555493d2 - Special thanks to Ind Signed-off-by: Haru <haru@dotalux.com>
2013-12-02Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind8-254/+298
2013-12-02Fixed Bug 7336 (woo %2)shennetsind1-1/+3
flag was discarding elegible guild mates. Special Thanks to kyeme. http://hercules.ws/board/tracker/issue-7336-gvg-noparty-is-missing/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-02HPM Hooks UpdateHercules.ws3-48/+18
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-12-01Fixed Bug 7866shennetsind3-7/+10
Fixed EQI_SHADOW_ACC_L ability to produce bonuses, Special Thanks to rosfus, Angelmelody. http://hercules.ws/board/tracker/issue-7866-eqi-shadow-acc-l-missing-effect/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-01Changed item Aegis ID and mob Sprite ID lookups to case sensitive.Haru2-5/+5
Signed-off-by: Haru <haru@dotalux.com>
2013-12-01Changed variables, labels, functions, commands to case sensitive.Haru3-112/+179
- Fixes bugreport:7810, thanks to Wend, kyeme, evilpuncker, jaBote, and various other people I may be forgetting to mention http://hercules.ws/board/tracker/issue-7810-disguise-script-command - Due to the nature of this change, I'm leaving the deprecation messages lingering around for a while more (as errors rather than warnings), to make sure they won't pass unnoticed, in case you haven't yet updated your custom scripts to comply with this. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-12-01Changed builtin keywords in the script engine to case sensitive.Haru3-88/+94
- Any scripts using the wrong case, that were throwing deprecation warnings until now, will become invalid. - Related to bugreport:7810. Signed-off-by: Haru <haru@dotalux.com>
2013-11-30Fixed an issue with assignment operators and expressionsHaru1-2/+3
- Assignment operators would not work correctly, or at all, when followed by an expression (as opposed as a value). - Fixes bugreport:7864, thanks to Lelouch, Ind. - Added associativity tests for those operators to the self-test script. - Added total error count to the self-test script (thanks to Lighta.) Signed-off-by: Haru <haru@dotalux.com>
2013-11-30Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind4-5/+12
2013-11-30Minor adjustmentsshennetsind4-5/+24
- improved @makehomun -1 so that if the homun data hasnt been loaded it is requested. - instances of private types (party/guild/char) no longer create channels, however global types still does (IOT_NONE). - Fixed an issue with party/guild instance data not being freed when either is destroyed (Special Thanks to Yommy). Signed-off-by: shennetsind <ind@henn.et>
2013-11-29Minor improvementshennetsind4-32/+39
pc_checkitem is now triggered by @reloaditemdb to ensure modified conditions are respected, also a performance boost that causes the itemlist/cartlist/storagelist/gstoragelist lookups to only be triggered on demand instead of on every teleport. Closes #219 Fixed ancient monster ai bug that caused mobs to consider themselves elegible targets, which would waste status_check_skilluse and battle_check_target calls. Signed-off-by: shennetsind <ind@henn.et>