summaryrefslogtreecommitdiff
path: root/src/map/atcommand.c
AgeCommit message (Collapse)AuthorFilesLines
2014-02-10bindatcommands are now case-insenstivie (just like normal @commands)shennetsind1-1/+1
As proposed by kyeme in http://hercules.ws/board/topic/2101-bind-commands/ Signed-off-by: shennetsind <ind@henn.et>
2014-01-22Renamed atcommand->parse to atcommand->execHaru1-10/+12
- Renamed function to a more appropriate name. - Changed its last argument 'int type' to 'bool player_invoked' to make its purpose more obvious. Signed-off-by: Haru <haru@dotalux.com>
2014-01-22Improvements to exp_guild.txt loadingHaru1-12/+13
- Modified exp_guild.txt processing to honor the value of MAX_GUILDLEVEL and correctly handle overflows. Signed-off-by: Haru <haru@dotalux.com>
2014-01-18Socket interfacedshennetsind1-1/+1
We designed this one with having as little changes required elsewhere in mind, thus the way most socket-related things are called has not changed. Plugins may now take a greater advantage of the socket features. Signed-off-by: shennetsind <ind@henn.et>
2014-01-18Libconfig Interfacedshennetsind1-20/+20
Ready for plugin use. Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2014-01-14Updated return values of some atcommands.panikon1-29/+31
Altered many function types from int to bool(C99) and added meaningful return values. Altered many function types from int to void as they didn't have any meaningful return value. Replaced chrif_char_offline with a macro as this function did exactly the same as chrif_char_offline_nsd.
2014-01-12Changed some void* to the correct data types where applicableHaru1-4/+4
Signed-off-by: Haru <haru@dotalux.com>
2014-01-11Hercules 1st 2014 MegaPatchshennetsind1-6/+6
http://hercules.ws/board/topic/3886-hercules-1st-2014-megapatch/ Signed-off-by: shennetsind <ind@henn.et>
2014-01-08Introducing Hercules Autotrade Persistencyshennetsind1-1/+8
Aka autotrading merchants survive server restarts. Originally sekai's (aka me). Special Thanks to Haruna, Michieru. Signed-off-by: shennetsind <ind@henn.et>
2013-12-24Christmas Patch - 2013-12-23 Supportshennetsind1-8/+19
Info: http://hercules.ws/board/topic/3614-christmas-patch-gifto/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-15Replaced pc->pc_has_permission/can_give_items/can_give_bound_items with ↵shennetsind1-34/+34
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)shennetsind1-29/+29
Because 2 jumps to get a single value is just awful. Signed-off-by: shennetsind <ind@henn.et>
2013-12-17Fixed several compiler warningsHaru1-25/+27
- 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-09Fixed some logic errorsshennetsind1-32/+34
Special Thanks to Haru Signed-off-by: shennetsind <ind@henn.et>
2013-12-06HPM: mapindex interfaceshennetsind1-13/+13
Signed-off-by: shennetsind <ind@henn.et>
2013-12-01Fixed Bug 7866shennetsind1-1/+2
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-11-30Minor adjustmentsshennetsind1-4/+14
- 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-28Follow up fdb6de1aa34086fd4d22ae127437727f556cea3cshennetsind1-2/+2
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-27Plugins can now make use of msg_txt()shennetsind1-2/+2
Signed-off-by: shennetsind <ind@henn.et>
2013-11-27Dropped emperium spawn restrictionsshennetsind1-7/+2
Thanks to kyeme for bringing it to our attention. 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 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-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 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-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-19Sanitized and improved several macros through the codeHaru1-36/+33
- 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-18Corrected size-related constant names and cleaned up comments (closes #222).Mumbles1-11/+11
2013-11-16Introducing Character Ban Support.shennetsind1-3/+5
@charban/@charunban, can temporarily block any accounts as opposed to the usual account-wide block. Special Thanks to Haruna, Yommy! Signed-off-by: shennetsind <ind@henn.et>
2013-11-16Fixed atcommand alias bug on selected commandsshennetsind1-23/+23
Modified the issues in question to check against the source command name, ensuring that the conditions work even when an alias is used. Also replaced sensitive conditions with insensitive ones, Special Thanks to Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-09Fixed Bug 7809shennetsind1-3/+3
Fixed @speed bug that'd cause partial speed increase (instead of 100%) until map change. Thanks to Beret, kyeme. http://hercules.ws/board/tracker/issue-7809-speed-command/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-07Further item bind adjustmentsshennetsind1-2/+2
Thanks to Haruna! Signed-off-by: shennetsind <ind@henn.et>
2013-11-07Item Bound Fixes/Adjustments/Improvementsshennetsind1-13/+7
Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-11-06Merge remote-tracking branch 'origin/master'shennetsind1-17/+61
Signed-off-by: shennetsind <ind@henn.et> Conflicts: conf/messages.conf src/common/mmo.h src/map/pc_groups.c src/map/pc_groups.h
2013-11-06Merge pull request #217 from HerculesWS/script-checkershennetsind1-1/+4
Introducing the Hercules Standalone Script Syntax Checker
2013-11-06Modified status_calc_shennetsind1-5/+6
Replaces the previous 'first' flag with a multi-option flag capable of selectively determining calls where the recalculation must not be hold by delayed damage, and therefore must take place immediately. This fixes issues caused by actions that require immediate recalculation e.g. on-level-up max_hp update, also modified @baselevel where status_calc was being called after the heal and not before, causing it not to be fully healed. Special Thanks to Haruna! <3 Signed-off-by: shennetsind <ind@henn.et>
2013-11-06Modified @command loadingshennetsind1-9/+10
So that HPM plugins are able to override default commands, thanks to Akkarin for bringing it up. Signed-off-by: shennetsind <ind@henn.et>
2013-11-05Introducing the Hercules Standalone Script Syntax CheckerHaru1-1/+4
- Added a command line argument '--script-check' to check a script's syntax without running the server (and without requiring a SQL connection). Usage: ./map-server --script-check /path/to/the/script.txt - For convenience, a script-checker bash script is provided, to set the path correctly when called from a different directory. Usage: /path/to/Hercules/script-checker /path/to/the/script/to/check.txt - While the script checker will supposedly work under windows as well, no convenience scripts are currently provided for platforms other than UNIX (feel free to open a pull request with a .bat launcher or whatever you like) - Integration with IDEs or text editors is possible. In fact, I already have a fully functional plugin for vim (through vim-syntastic), and if there's enough interest, I'll publish it. - screenshot: http://d.pr/i/NOBD - If you want an online checker, http://haru.ws/scriptchecker/ is running this code, without modifications and will be kept up to date (without any warranty though.) - Special thanks to Ind, Yommy, Streusel, who helped making this possible, in a way or another.
2013-11-04Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-10/+108
2013-11-04pc_groups interfacedshennetsind1-27/+27
The last file without a interface is now no more (date.h doesn't count :P). Modified the way permissions are stored in order to enable plugins to be able to create permissions ( pcg->add_permission("name") [returns permission key] ). Special Thanks to Haruna! Closes #121 Signed-off-by: shennetsind <ind@henn.et>
2013-11-03Merged Pull Request #195 (@autoloottype)Haru1-10/+108
- Small tweaks to the command, fixed merge conflicts Signed-off-by: Haru <haru@dotalux.com>
2013-11-02Fixed Bug #7786shennetsind1-6/+12
@speed no longer screws up on map change, modified @speed feedback so its clear whether the permanent speed flag is gone, enhanced @speed by making it capable of bypassing battle_config.max_walk_speed, made status_calc_speed rely on MIN_WALK_SPEED instead of the hardcoded 0, modified MIN_WALK_SPEED from 0 to 20 (it 1) wasnt being respected and 2) less than 20 clips). @speed is now capable of moving the character faster, prior to this commit @speed 0 was equivalent to @speed 50 of this new version, @speed 20 for example is now the new maximum (and moves much faster). http://hercules.ws/board/tracker/issue-7786-speed-bug-when-changing-maps/ Thanks to Mumbles for all the info Signed-off-by: shennetsind <ind@henn.et>
2013-11-01Removed type_id and some unused variables from @autoloottypeDastgir Pojee1-28/+17
2013-10-31No error after compilation, but when logging in at map server it will crash.sevenzz231-17/+61
Im pretty sure its on the clif.c Signed-off-by: sevenzz23 <sevenzz23@yahoo.com>
2013-10-30Official Font Supportshennetsind1-4/+4
Fonts are now relog-persistent. Font items are now toggle-on/off, they no longer go away on use, they go away when their rental duration is over (and the font effect goes back to original). Special Thanks to Yommy for all the data! Signed-off-by: shennetsind <ind@henn.et>
2013-10-31Several Changes to autoloottype command.Dastgir Pojee1-45/+36
2013-10-26Changed 'tick' variables to 64 bitHaru1-11/+19
- This fixes an issue with timers that stop working after about 24-49 days when the tick overflows (note that this may happen much earlier than that, and at hard to predict times, on some systems) - Updated the RDTSC help message in the configure script to also warn users about issues with SpeedStep enabled systems. - On Windows, tick() still has a resolution of 10~15ms (or even as low as 100ms on some systems). A TODO comment (thanks, Ai4rei) was added for a follow-up patch, as I want this one to be as small as possible) - Note: on Windows versions earlier than 6.x (Vista, Server 2008), the tick overflow issue is NOT fixed, since they don't support the function used to retrieve a 64 bit tick. This isn't a big issue, since those platforms are already - or going soon to be - out of their extended support period, and it's already advisable to upgrade, for other reasons. If you're the unfortunate user of such a system, it is recommended that you reboot your machine at least once every 49 days for Hercules to work reliably. - Note: To clear some doubts, since I've already been asked, this has absolutely NOTHING to do with 32/64 bit CPUs or OSes. It's all about a variable's size, not the size of registers of your CPU, and your 32bit CPU will be able to handle this just fine. Signed-off-by: Haru <haru@dotalux.com>
2013-10-25nocashshop mapflagshennetsind1-3/+3
As requested by the community in http://hercules.ws/board/topic/1477-mapflag-for-cash-shop/ and http://hercules.ws/board/topic/1476-disable-cashshop-in-pvp-woe/ 'nocashshop' mapflag disables the usage of the cashshop button as well as any attempts to purchase (in case the flag is turned on after someone gets the shop open). Signed-off-by: shennetsind <ind@henn.et>
2013-10-24Fixed @cash/@points displayshennetsind1-18/+21
message would be displayed twice, when cashshop_show_points was enabled, with positive values Merge from e71a6cc7eca7d0c003c9cc6bf1965a0e07fdf505 Closes #157 Signed-off-by: shennetsind <ind@henn.et>
2013-10-24Added idletime optionsshennetsind1-0/+3
There have been requests for the extension of the feature, I was reluctant given more options would cause features relying on the feature to be easier to counter (less accurate), with the modification of the feature to employ options the feature is now configurable at the server owners discretion. Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>