summaryrefslogtreecommitdiff
path: root/src/map/mercenary.h
AgeCommit message (Collapse)AuthorFilesLines
2017-11-05Reduce confusion between skill IDs and skill DB indexes (part 2)Haru1-1/+1
Remove MAX_SKILL in favor of MAX_SKILL_DB, when referring to the maximum skill DB index. This is opposed to MAX_SKILL_ID, the maximum skill ID. Signed-off-by: Haru <haru@dotalux.com>
2016-10-28Fixed copyright year for 2016Lemongrass31101-1/+1
2016-02-24Added const qualifier to several variable/argument pointersHaru1-1/+1
- This is necessary for compatibility with a const RFIFOP. Signed-off-by: Haru <haru@dotalux.com>
2015-12-28Added merc_id, replaced numeric mercenary IDs with enum membersHaru1-0/+35
Signed-off-by: Haru <haru@dotalux.com>
2015-12-15Added GPL-compliant header to all sources and build scriptsHaru1-3/+20
Signed-off-by: Haru <haru@dotalux.com>
2015-08-15HPM compatibility improvementsHaru1-3/+3
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>
2015-07-25Reduce memory usage in HPM in mercenary.cAndrei Karas1-1/+1
2015-06-19Cleaned up some #includesHaru1-0/+2
Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Removed ".." from include directivesHaru1-3/+3
- Include directives are now directory-independent. - This will allow building plugins from other directories in future. Signed-off-by: Haru <haru@dotalux.com>
2015-01-12Blocked compilation of plugins that use unavailable functionsHaru1-0/+2
- 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>
2014-11-16Whitespace cleanup (no code changes)Haru1-10/+10
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>
2014-07-11Fixed reserved __identifier violationsHaru1-3/+3
- Complies with CERT DCL37-C - Fixes issue #293 (special thanks to elfring) Signed-off-by: Haru <haru@dotalux.com>
2014-05-13Removed trailing whitespace (sources)Haru1-1/+1
Signed-off-by: Haru <haru@dotalux.com>
2014-05-10Re-commit of "Fixed order of includes in all source files"Haru1-0/+1
This reverts commit 94657284973f4037596bae468ebfbee5c217e02b.
2014-05-10Revert "Fixed order of includes in all source files"panikon1-1/+0
This reverts commit b6b3f58795288701d0e162d43fa6f0a47af913b3. Fixes issue 8184 http://hercules.ws/board/tracker/issue-8184-cart-related/
2014-05-09Fixed order of includes in all source filesHaru1-0/+1
- 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>
2014-02-02Introducing HPM Datacheckshennetsind1-3/+3
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-05Introducing the Hercules Standalone Script Syntax CheckerHaru1-1/+1
- 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-10-26Changed 'tick' variables to 64 bitHaru1-2/+2
- 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-09-28HPM: Mercenary.c Completedshennetsind1-4/+12
Moved missing declarations of interest into the interface. Signed-off-by: shennetsind <ind@henn.et>
2013-07-29Fixed Bug #7597 / Follow up b7171479a47490ff80bf04849f763158d6d96facshennetsind1-97/+93
http://hercules.ws/board/tracker/issue-7597-server-crash/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-29Added mercenary interfaceSusu1-83/+97
2012-12-30-Harmonize skillid, skill_num, skillnum, skill, to skill_id and same for ↵glighta1-1/+1
skill_lv -Optimise type from int to int16 in order to reduce ram consumtion. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17065 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-12-05- Undid r16968: SVN Replaced with source:/trunk/src/@16966 (tid:74924).brianluau1-29/+29
[16969:16991/trunk/src/] will be re-committed in the next 24 hours. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16992 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-11-25Applied AStyle code formating as discussed on tid:74602.greenboxal21-29/+29
Removed /SAFESEH option from MSVC11 projects. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16968 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-11-09- Removed backup.pl (for TXT servers) and vs9-to-vs8.php (outdated versions);momacabu1-2/+1
- Merged @killmonster2 with @killmonster tid:73632; - Fixed bugreport:6764, auction code was misplaced; - Follow up to r16753 (bugreport:6523), fixed bugreport:6673, using Gravitational Field with Safety Wall would keep the character immobilized. Blame myself, thankyou Lunar for the fix; - Fixed bugreport:6514, @slaveclone wouldn't be targeted by monster. Thanks to zippy; - Fixed bugreport:6837, some code was duplicated; - Fixed bugreport:6768, removed some leftovers from TXT removal; - Fixed bugreport:6868, Unequipping a weapon with Incantation Samurai card will not kill you if you have less than 999 hp and are on a non-pvp map; - Fixed wrong bit field on ai field in mob_data structure. Credits to Ind. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16881 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-09-08Fixed bugreport:6587 removed unused parameters in several damage/heal ↵shennetsind1-1/+1
functions from minions git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16760 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-21Fixed bugreport:6044 mercenaries should warp after being far from the master ↵greenboxal21-0/+1
after 3 seconds. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16327 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-14- Fixed mercenaries not warping to their master if the master is more than ↵epoque111-0/+3
15 cells away git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15108 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-08Fixed @reloadskilldb, bugreport:4412 and in the flow of that mercenary db is ↵shennetsind1-0/+6
now reloaded in @reloadmobdb (like homunculus db already does) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15027 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-06- Renamed createmercenary to mercenary_create.zephyrus1-2/+10
- Added other required mercenary script commands for official script. - New Constants entries for this script. - Update to missing configuration on mercenary skills. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13195 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-03- Starting Mercenary Skill implementation.zephyrus1-0/+4
- MS_BASH Completed. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13189 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-01- Mercenary Loyalty Updates.zephyrus1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13176 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-01- Something i forget to commit mmo.h.zephyrus1-1/+10
- Preparatives for Faith/Calls/Kills for mercenaries. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13167 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-31- A proper mercenary lifetime calculation.zephyrus1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13165 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-31- Implemented script commands for mercenary items (mercenary_heal and ↵zephyrus1-0/+1
mercenary_sc_start). - Fixed a bug crashing server with mercenary. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13159 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-31* More mercenary updates.zephyrus1-0/+2
- Implemented Mercenary Die, Damage, Run Away when master dies. - Log mercenary damage and gives exp to Master. - Some little bugs. * Fixed Bubble Gums effect works on mvp_sd not sd (according to Doddler). NOTE: Now you can summon a mercenary, make it attack (not skills), follow you even on map change. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13158 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-26Added mercenary code (it should have been done this way in r13122).ultramage1-0/+48
Removed 2 unused variables in homunculus code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13137 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-26Renamed files of 'mercenary' to 'homunculus'.ultramage1-90/+0
Applied relevant changes that were reverted (relevant = not unneccessary whitespace changes). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13136 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-26Reverted all mercenary changes to mapserver homunculus codeultramage1-26/+68
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13135 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-24- Implemented Mercenary Scrolls (item_db)zephyrus1-1/+4
- There are some little problems, like remaining time going to 0, but you can summon it, make it walk, follow you. - Feel free to test it. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13126 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-24- Moving all content of Homunculus code to a proper file Homunculus.c/hzephyrus1-86/+1
- Update of all project files. NOTE: All functions on homunculus.c should be renamed i think, to remove all the merc_*. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13122 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-24- Implemented unit_calc_pos (copy from pet_calc_pos) to implement it on ↵zephyrus1-1/+1
Mercenary/Homunculus and don't use x,y-1 always. - Implemented Mercenary walk to master (same packet as Homunculus). - Starting work on Stats but i will need lot of help. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13121 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23- Completed Mercenary Create, Delete, Save. Tests OK.zephyrus1-0/+2
- Incremented MAX_SKILL required for a proper load of Mercenary Skills. - Some fixes. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13118 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23- Mercenary Packets (Server to Client). Still need a little more info.zephyrus1-2/+9
- Packet for Mercenary Menu. - Some other progress as creation but need more code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13116 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-22- Mercenary data structures.zephyrus1-1/+13
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13110 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-22- Mercenary Database Reading.zephyrus1-0/+19
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13109 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26Adjusted eAthena code to compile cleanly in C++ mode.ultramage1-4/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-24* Reorganized the contents of the mapserver's header files.ultramage1-0/+21
- map.h is no longer a generic dumping spot of all the shared structs, and instead, each such structure now resides in its logical component - map.h now only holds mostly map-related things (needs more cleaning) - there's still a lot of room for improvement (reorganization within individual header files, etc...) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12429 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-22Fixed mob AI code iterating over non-mob objects without checking, when ↵ultramage1-1/+1
monster_ai flag 0x20 is set (caused by r11943) Cleaned up macros that wrap unit_stop_attack() (bugreport:357) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11957 54d463be-8e91-2dee-dedb-b68131a5f0ec