Age | Commit message (Collapse) | Author | Files | Lines |
|
Because 2 jumps to get a single value is just awful.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Fixed couple intif.c interface members being called outside the interface
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: shennetsind <ind@henn.et>
|
|
and thus doesn't cause confusion (and it wasn't loop-related anyway).
Signed-off-by: shennetsind <ind@henn.et>
|
|
- 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>
|
|
- 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>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
Special Thanks to Haru
Signed-off-by: shennetsind <ind@henn.et>
|
|
- 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>
|
|
Enabled plugin access to mapindex interface
Signed-off-by: shennetsind <ind@henn.et>
|
|
which was broken 5 years ago in 13106, special Thanks to karazu, Angelmelody and kyeme.
Signed-off-by: shennetsind <ind@henn.et>
|
|
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>
|
|
Signed-off-by: shennetsind <ind@henn.et>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
Special Thanks to Megasantos, Beret.
Follows up 098dbcf672e04657553b9f1629550e6bc8771af3
http://hercules.ws/board/tracker/issue-7883-reloaditemdb/
Signed-off-by: shennetsind <ind@henn.et>
|
|
|
|
- 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>
|
|
- 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>
|
|
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>
|
|
- Follow up to c6c2ad187c386d8d27d3336dcbdd5a92555493d2
- Special thanks to Ind
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
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>
|
|
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>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
|
|
- 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>
|
|
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>
|
|
adjustment.
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
- 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>
|
|
|
|
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>
|
|
- [ 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>
|
|
- [ 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.
|
|
- [ 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>
|
|
- [ This commit is part of a larger script engine related update ]
- Since: c18f438
Signed-off-by: Haru <haru@dotalux.com>
|
|
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>
|
|
Signed-off-by: shennetsind <ind@henn.et>
|
|
Thanks to kyeme for bringing it to our attention.
Signed-off-by: shennetsind <ind@henn.et>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
@useskill adjusted to update invincibility state.
http://hercules.ws/board/tracker/issue-7700-using-useskill-command/
Signed-off-by: shennetsind <ind@henn.et>
|