summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
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>
2013-11-29Follow up 3a269dca93c421141631b4c87b2f366b6c130a42shennetsind1-0/+3
Extended to the fix to aggregated as well, as in val: [ y,x ]/{y,x}/(x,y,...) Signed-off-by: shennetsind <ind@henn.et>
2013-11-29Update JOB_REBELLION 'job_db1.txt' to its official values and some mini ↵malufett2-3/+7
adjustment. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-11-29Corrected an uninitialized variable when adding an itemHaru3-2/+5
- The .favorite field of newly added inventory items wasn't correctly initialized to zero, potentially causing data loss (fixes bugreport:7854, thanks to Vincent, GrumpyPanda). Signed-off-by: Haru <haru@dotalux.com>
2013-11-28Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind3-32/+154
2013-11-28Fixed conf inheritance issueshennetsind1-5/+9
Special Thanks to bgamez23, kyeme. Signed-off-by: shennetsind <ind@henn.et>
2013-11-28HPM Hooks UpdateHercules.ws3-32/+154
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-28Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind2-122/+172
2013-11-28Follow up fdb6de1aa34086fd4d22ae127437727f556cea3cshennetsind10-185/+346
Modified reflect code so that each reflection source can judge whether to apply or not, necessary for mechanics such as item-bonus reflect triggers even on autoguard while reflect shield does not. Re-added that "reflect shield" overhead display which I mistakenly removed in fdb6de1aa34086fd4d22ae127437727f556cea3c. Added code to refrain damage numbers from overlapping in the client, which would render them illegible. Special Thanks to kyeme, Yommy. http://hercules.ws/board/tracker/issue-7792-safety-wall-reflect-bug-body-relocation-error/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-28Added support for automatic concatenation of adjacent string literalsHaru1-18/+21
- [ This commit is part of a larger script engine related update ] - Adjacent string literals are now automatically concatenated into one string upon parsing. - Adjacent string literals are string literals (i.e. "such as this", with only whitespace (including line breaks and/or comments) between them. For example, the lines: mes "this will be concatenated " /* skipping this comment */ " into one string"; // at parse time will produce an output of "this will be concatenated into one string". - The feature brings parity with other languages (i.e. C), and makes it easier to split long strings in multiple lines, without having to resort to a, slower, run-time string concatenation operator ('+') - Special thanks to Trojal for the idea. Signed-off-by: Haru <haru@dotalux.com>