summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
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>
2013-11-28Corrected operator precedence table.Haru1-20/+20
- [ This commit is part of a larger script engine related update ] - Operator precedence rules now closely follow those of languages such as C and derivates/related (C++, Java, PHP, etc.) - Please note that if you had custom scripts with non parenthesized expressions containing bitwise |, &, ^ operators, they may behave incorrectly now (or perhaps they were already behaving incorrectly, since the previous behavior was undocumented). - Added an up to date operator precedence/associativity table in the script documentation. - Added an operator/keyword self-test script in the npc/custom folder, in case if may be of some use for future regression-testing.
2013-11-28Added pre de/increment operators. Fixed post de/increment operators.Haru2-102/+150
- [ This commit is part of a larger script engine related update ] - Suffix ++ and -- operators now behave like in other languages (updating the variable *after* its value is returned.) - Prefix ++ and -- operators are added for parity with other scripting/programming languages. They update the variable they're applied to *before* returning its value. - Please note that the implementation of the prefix form of those operators (like it happens in most languages) is more efficient than the suffix form. '++.@i' is (slightly) faster than '.@i++', or at least not slower. - Fixed some outdated script debug functions. - Follow-up to c18f438. Signed-off-by: Haru <haru@dotalux.com>
2013-11-28Removed meaningless '~=' operator.Haru1-1/+0
- [ This commit is part of a larger script engine related update ] - Since: c18f438 Signed-off-by: Haru <haru@dotalux.com>
2013-11-27Fixed Bug 7858shennetsind4-0/+38
Official item drop announce support, currently hardcoded list -- we'll be following up shortly with a decent way of storing it. Special Thanks to Yommy, Beret, kyeme. http://hercules.ws/board/tracker/issue-7858-monster-rare-drop-announcement/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-27Plugins can now make use of msg_txt()shennetsind2-6/+4
Signed-off-by: shennetsind <ind@henn.et>
2013-11-27Dropped emperium spawn restrictionsshennetsind5-18/+12
Thanks to kyeme for bringing it to our attention. Signed-off-by: shennetsind <ind@henn.et>
2013-11-27Fixed Bug 7495shennetsind1-0/+4
warping (e.g. @recall) of autotrade characters no longer leaves them in memory limbo, the trigger that'd be expected from the client is now called for autotrade units so that they complete the warp procedure in full, vendings are loaded properly as well. http://hercules.ws/board/tracker/issue-7495-autotrade/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-27Fixed Bug 7792shennetsind1-37/+37
Updated damage reflection logic to reflect the official (but weird to say the least) logic, whereas ATK_BLOCK can trigger reflection (e.g. inside safety wall) instead of only ATK_DEF (atk_def = attack connected, yup misleading name). Special Thanks to Yommy, kyeme, Haruna. http://hercules.ws/board/tracker/issue-7792-safety-wall-reflect-bug-body-relocation-error/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-27Fixed Bug 7805shennetsind1-3/+22
Modified @itembound so that it provides feedback in case of bind conditions that fail to meet. pc_additem messages will remain so that any other area that might create a invalid bind item will still be cancelled and provide feedback. Special Thanks to kyeme. http://hercules.ws/board/tracker/issue-7805-itembound-console-error-when-no-partyguild/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-26Fixed Bug 7859shennetsind1-3/+4
magic reflect now nullifies any knockback. Special Thanks to Yommy. http://hercules.ws/board/tracker/issue-7859-magic-reflect-knock-back/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-26Fixed Bug 7794shennetsind1-0/+13
monster's healing now refreshes their hp bar accordingly. Special Thanks to Beret. http://hercules.ws/board/tracker/issue-7794-healing-in-monsters/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-26Fixed Bug 7700shennetsind1-1/+3
@useskill adjusted to update invincibility state. http://hercules.ws/board/tracker/issue-7700-using-useskill-command/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-26Fixed Bug 7838 (addendum)shennetsind1-1/+1
mon_trans_disable_in_gvg: yes no longer displays the error message repeatedly to no purpose. Special Thanks to kyeme http://hercules.ws/board/tracker/issue-7838-wrong-message/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-26Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind3-42/+42
2013-11-26Fixed Bug 7855shennetsind1-2/+2
Follow up 61841e7861f63d98ecb417e2bf17135970b79c5a http://hercules.ws/board/tracker/issue-7855-error-compiling-vb-2013/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25HPM Hooks UpdateHercules.ws3-42/+42
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-25calc_return_damage cleanup & fixesshennetsind2-90/+92
Fixed skill_id not being passed and thus causing some conditions to never be met, dropped some other conditions that would never be met and thus were just wasting space. Moved clif damage outside so that its only used once and with the overall damage instead of several times aggregating the combined delay. Special Thanks to Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed getareachar_skillunit v4 and minor cleanupshennetsind4-114/+108
Special thanks to Rytech for pointing it out, updated to match latest data (Thanks to Yommy) and some minor cleanup Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed Bug 7827shennetsind1-1/+13
Fixed reflect shield not respecting maps reduction flags. Data tested and confirmed on official server, special Thanks to Yommy and Haruna. http://hercules.ws/board/tracker/issue-7827-reflect-shield-woe-reductions-autoguard/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed Bug 7838shennetsind1-1/+1
Was pointing to the wrong message id, special thanks to sevenzz23 http://hercules.ws/board/tracker/issue-7838-wrong-message/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed Bug 7764shennetsind1-0/+1
Server now (virtually) enforces character to be facing north upon teleporting, fixes issues such as when you're facing left, teleports, uses high jump, and still goes left even though client makes it look like you're facing north. Special Thanks to kyeme. http://hercules.ws/board/tracker/issue-7764-warp-facing/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed Bug 7833shennetsind1-0/+1
instance custom map names no longer linger in the index after the instance is destroyed http://hercules.ws/board/tracker/issue-7833-instancing-issues/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed txt_time (used by @time)shennetsind1-11/+10
number of screwed up scenarios e.g. when day, hour and second are 0 but minute is not. Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed Bug 7849shennetsind1-35/+14
@time crash depending on night/day timer settings, also dropped 2 unsupported scenarios (been there for ages) http://hercules.ws/board/tracker/issue-7849-map-crash/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed equip_level_max handling in the sql db convertershennetsind2-3/+15
The field is now NULL when the value is not provided, instead of MAX_LEVEL. Special Thanks to Mvmbles for bringing the issue to our attention. Signed-off-by: shennetsind <ind@henn.et>
2013-11-22Minor HPMi Sub Modificationsshennetsind5-16/+44
- HPMi->addCommand is now addAtcommand, dropped usage of ACMD_A() - HPMi->addScript is now addScriptCommand, dropped usage of BUILDIN_A() - HPMi->addCPCommand is now addCPCommand, dropped necessity of CPCMD_A() - HPMi->addPacket is now addPacket, 5th param (HPMi->pid) is now automatically filled by the macro, therefore param count drops to 4 (packetID,packetLength,packetFunction,packetIncomingPoint). There is no longer necessity to check for the availability of the commands, the macros will do it on their own and drop a warning about it upon failure. These changes won't affect pre-compiled plugins. Signed-off-by: shennetsind <ind@henn.et>
2013-11-21Fixed a somehow-cygwin-only warning 'array subscript is above array bounds'shennetsind1-1/+1
Signed-off-by: shennetsind <ind@henn.et>
2013-11-20Dropped some unused aliases in atcommand usage messages.shennetsind1-4/+4
Those were prone to be confusing with the recent implementation of charban/charunban, special thanks to uzieal for bringing it up. Signed-off-by: shennetsind <ind@henn.et>
2013-11-20Added support for 'make plugin.pluginname' to compile only 'pluginname'Haru7-123/+153
- Various Makefile optimizations Signed-off-by: Haru <haru@dotalux.com>
2013-11-19Fixed Bug 7840shennetsind1-1/+1
Special Thanks to kyeme for all the debug information and help! http://hercules.ws/board/tracker/issue-7840-char-server-crash/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-19Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind59-800/+1035
2013-11-19Fixed Bug 7799 - SC_MOONSTAR neverendingshennetsind1-2/+10
Follows up 665f1306a130d4b8c359972bf4e58ef9d3bd9cd8 http://hercules.ws/board/tracker/issue-7799-sc-moonstar/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-19Fixed wrong parentheses in a condition in status_calc_regen_rateHaru1-27/+20
- eAthena:15257 - Teh wrong parentheses cause the condition to be always false, which in turn causes SP regen to continue while under SC_EXTREMITYFIST/SC_EXPLOSIONSPIRITS statuses. Signed-off-by: Haru <haru@dotalux.com>
2013-11-19Added support for Max EquipLv in Pre-RenewalHaru1-7/+1
- Follow-up to ed72a947a6c97804c1eef5b80bfa49d99f7d7586 - Max EquipLv is now observed, rather than ignored, in pre-renewal mode. Signed-off-by: Haru <haru@dotalux.com>
2013-11-19Replaced hardcoded Item IDs with constantsHaru6-217/+448
- This makes it harder to get the item IDs wrong in the code. - Fixes item 'Slot_Coupon' being incorrectly considered a Spell Book due to an oversight (wrong item nameid) when the check was introduced. Signed-off-by: Haru <haru@dotalux.com>
2013-11-19Sanitized and improved several macros through the codeHaru54-508/+495
- Sanitized all potentially unsafe macros (related eA:15259) - Improved some function-like macros to evaluate their argument only once and keep it in a temporary variable. This improves performance in the damage calculation related code. Signed-off-by: Haru <haru@dotalux.com>
2013-11-18Merge pull request #224 from datmumbles/size_changesshennetsind8-46/+46
Corrected size-related constant names (closes #222).