Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
(http://herc.ws/board/topic/10020-official-mapflag-to-disable-viewid/)
Closes #926 as merged
Signed-off-by: Haru <haru@dotalux.com>
|
|
- included script->charid2sd and script->nick2sd
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
::entries
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
Improved compatibility, portability and standards conformance.
- Since it is not possible to portably and reliably re-use the core's
symbols in plugins, symbols are no longer exported unless explicitly
required, in the UNIX builds. This mimics the Windows behavior and
adds HPM compatibility to OSes such as FreeBSD. Credits to Andrei Karas
for making this possible.
- For convenience, it is no longer necessary to call GET_SYMBOL, since
the plugin will automatically import all the available symbols when
it's loaded, depending on the included headers.
- Plugins are now supposed to include the "common/hercules.h" header
before including anything else. Incluing common/HPMi.h,
common/cbasetypes.h or conf/core.h is no longer necessary, as those
are guaranteed to be automatically included by hercules.h.
- HPM API version bumped to 1.1.
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
|
|
script_run_item_unequip_script.
|
|
|
|
|
|
- Include directives are now directory-independent.
- This will allow building plugins from other directories in future.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixed an issue caused by unescaped characters being written and read out of the .pot unproperly.
This commit also causes map server to print the file it wrote to when terminating
Signed-off-by: shennetsind <ind@henn.et>
|
|
Servers can now run on any number of languages, without editing npc files.
Designed by Haruna and Ind
http://hercules.ws/board/topic/8687-hercules-ultimate-localization-design/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Rather than failing at runtime, plugins that try to access
non-interfaced, unavailable functions or variables, will now show an
error at compile-time.
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
This includes, and is not limited to: mixed or wrong indentation, excess
whitespace (horizontal and vertical), misalignment, trailing spaces.
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
- Control flow statements (break, case, continue, default, do, for, if,
switch, whilei, else) and sub-function declarations (function) will no
longer show a custom error message when they are incorrectly
capitalized.
- Note: This does not mean that they are no longer case-sensitive. This
only means that no special message will be shown in case such an error
is detected. The script engine will throw a normal error, as it would
with any other kind of typo, rather than treating this as a special
case. Enough time was given to update third party scripts, and it is
now time to clean up our parsing code and get rid of these special
warnings.
- Variables, labels and commands will still show a warning for the time
being, since the side-effects of silently ignoring it could be quite
dangerous. An alternative approach to the case-check will be presented
in future. For now, those who want to disable it (and save a bit on
execution time and memory use), can simply comment out the #define
ENABLE_CASE_CHECK line in script.h, as usual.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Top level commands (function, warp, shop, cashshop, script, trader,
duplicate, monster, boss_monster, mapflag) will no longer show a
custom error message when they are incorrectly capitalized.
- Note: This does not mean that the commands are no longer
case-sensitive. This only means that no special message will be shown
in case such an error is detected. The script engine will throw a
normal error, as it would with any other kind of typo, rather than
treating this as a special case. Enough time was given to update third
party scripts, and it is now time to clean up our parsing code and get
rid of these special warnings.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Commands marked as deprecated will trigger a warning when the script
is loaded. (there are currently no commands marked as such, but some
will come soon)
Signed-off-by: Haru <haru@dotalux.com>
|
|
is about.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Complies with CERT DCL37-C
- Fixes issue #293 (special thanks to elfring)
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Includes in some files weren't sorted alphabetically. Special thanks
to KeiKun.
Signed-off-by: Haru <haru@dotalux.com>
|
|
This reverts commit 94657284973f4037596bae468ebfbee5c217e02b.
|
|
This reverts commit b6b3f58795288701d0e162d43fa6f0a47af913b3.
Fixes issue 8184
http://hercules.ws/board/tracker/issue-8184-cart-related/
|
|
- Changed order according to the (upcoming) code style guidelines.
- Fixes several issues caused by missing headers when their include
order is changed or in plugins.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- This affects normal execution as well as ./script-checker runs.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- The script command pcre_match and the operator ~= will return the
number of regular expression matches in a given string (roughly
equivalent to the php function preg_match or the perl operator =~)
- The operator ~! is the opposite of ~= (roughly equivalent to the perl
operator !~)
- See script_commands and npc/custom/test.txt for more information.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixes the following issues:
- donpcevent could cause a crash when used to a event of the same npc
- input/other-dialog-interactions could cause a crash when sending data to a disabled-fakenpc-id'd.
Special Thanks to Haruna, ossi0110.
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Fixes bugreport:8074, thanks to ahmadshidqi
http://hercules.ws/board/tracker/issue-8074-help-crash/
- Also fixed some DBMap allocation mistakes introduced in 4f3156b.
- Added testcases to the self-test script.
- Made possible thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|
|
different scopes
- Fixes bugreport:8008, special thanks to KeyWorld
http://hercules.ws/board/tracker/issue-8008-copyarray-fail-on-a-referenced-array-argument/
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Updated several functions to properly use the data structures defined
in parts 1 and 2.
- Special thanks to Ind for his help on this, as well as the previous
two parts.
- Fixes some crashes related to variable references passed back and
forth between nested callfunc/callsub scopes (related: 2669e9a,
3259f89, 4f2de07)
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Reorganized regs var/array DBMaps into a specific reg_db structure
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Moved string and numeric mapregs into the same DBMap (for consistency
with the other reg types.)
Signed-off-by: Haru <haru@dotalux.com>
|
|
NPC Error is now printed as well as the original message as proposed by Emistry in http://hercules.ws/board/topic/1864-mapindex-name2id-display-which-npc-caused-this/
Special Thanks to Haru!
Signed-off-by: shennetsind <ind@henn.et>
|
|
a benefit, for example, would be that the compounds are always up to date regardless if new members are added, also added a new compound OPTION_COSTUME
Special Thanks to Haruna, and AnnieRuru for pointing out constdb's outdatedness.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Did not affect write/read, except getarraysize and deletearray.
Special Thanks to Haru!
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Fixes bugreport:8015, thanks to N e s s
http://hercules.ws/board/tracker/issue-8015-error-in-compiling-in-debian-linux-latest-rev/
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Fixes bugreport:8013, thanks to Dastgir Pojee
http://hercules.ws/board/tracker/issue-8013-script-add-str-problem/
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Added script command strtol (conforming to the ISO C90 function)
- Modified script command axtoi to internally use strtol instead of an
unnecessary own implementation.
- Fixed sscanf behavior to conform to the C specifications in case the
input string is empty. It now correctly returns -1, or 0 if the format
string is also empty. Fixes bugreport:8009, thanks to AnnieRuru -
http://hercules.ws/board/tracker/issue-8009-sscanf-should-return-1-if-the-string-field-is-an-empty-string/
Signed-off-by: Haru <haru@dotalux.com>
|
|
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Fixes issue 7968, thanks to Moguri
http://hercules.ws/board/tracker/issue-7968-trader-npc-not-working/
- Corrected sprite name for KO_KAGE to match latest kRO info (previouly
KO_ZANZOU, conflicting with a Kagerou/Oboro skill identifier)
- Updated self-test script to include checks for constants and for setd
and getd.
- Made possible thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|