summaryrefslogtreecommitdiff
path: root/src/map/skill.c
AgeCommit message (Collapse)AuthorFilesLines
2013-11-19Sanitized and improved several macros through the codeHaru1-18/+18
- 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-7/+7
2013-11-08Fixed 5 Homun Bugsshennetsind1-2/+6
1. Homun cooldowns are no longer reset upon being vaporized. 2. Call Homun now displays the skill title above the char upon success. 3. Homuns that have been out of owners sight for over 3 seconds will now be teleport back to master. 4. pc_jobchange now correctly vaporizes the homun. 5. New homunculus now spawn with full health. Special Thanks to kyeme/Beret for all the information and official server testing. Signed-off-by: shennetsind <ind@henn.et>
2013-11-05Introducing the Hercules Standalone Script Syntax CheckerHaru1-4/+11
- 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-119/+112
- 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-24Merge pull request #189 from dastgirpojee/SkidConstshennetsind1-0/+1
During skill_db parse the skill names are now automatically turned into constants for use throughout any and all scripts, this improves processing speed during runtime and readability (as haruna demonstrates over #189). Thanks to dastgirpojee! Closes #188
2013-10-20Bug:7723 and Skill Cooldownsshennetsind1-48/+62
Fixed 7723, skill cooldowns are no longer have concurrent duplicates, when adding cooldown for a skill already in cooldown the timer is modified instead. http://hercules.ws/board/tracker/issue-7723-skill-blockpc-end-error Special Thanks to Haru, Wend and Beret. Also fixed skill cooldown duration/total display for characters that relog with a skill cooldown on clients 20120604 or higher Signed-off-by: shennetsind <ind@henn.et>
2013-10-19Fixed Bug#7737malufett1-13/+82
-http://hercules.ws/board/tracker/issue-7737-shadow-form-and-interaction-with-multi-hit-skills/?gopid=20576#entry20576 Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-10-17Merge remote-tracking branch 'upstream/master' into SkidConstDastgir Pojee1-10/+7
2013-10-15Fixed Bug#7738malufett1-1/+1
-where item bonuses 'bBreakWeapon' and 'bBreakArmor' or WS_MELTDOWN take effect in reflect damage. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-10-15Follow up @ a4802eaef9d71283070f1f31c859da871a7c8d32malufett1-9/+6
-skill animation. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-10-12Skill ID Constant AddedDastgir Pojee1-0/+1
2013-10-10Merge pull request #186 from cannelle/mastershennetsind1-10/+12
Added WE_BABY distance check.
2013-10-10Homun-S Quest Updatedshennetsind1-1/+1
Partial Merge of 0b68607 Quest Changelog: - 1.2 Replaced with official script. [Euphy] Closes #177 Closes #178 Signed-off-by: shennetsind <ind@henn.et>
2013-10-10Added WE_BABY distance check.cannelle1-3/+3
2013-10-08Added WE_BABY distance check.cannelle1-10/+12
2013-10-08Follow up bbaf8692374a82323858c4468f345d03cd05216dshennetsind1-1/+1
Thanks to malufett. Signed-off-by: shennetsind <ind@henn.et>
2013-10-07Fixed Bug #5085shennetsind1-1/+7
Fixed decrease agility duration for the level 48 (used by mvps) -- It'll take the benefits of lvl 48 (e.g. rate) but the duration will be equal to the one of lvl 10. http://hercules.ws/board/tracker/issue-5085-monster-decrease-agility/ Closes #154 Signed-off-by: shennetsind <ind@henn.et>
2013-10-07Updated/Fixed Clearanceshennetsind1-1/+5
Updated Clearance success rate; Fixed it affecting guild members. Thanks to Rytech/3CeaM Closes #152 Signed-off-by: shennetsind <ind@henn.et>
2013-10-07Merge pull request #182 from shenhuyong/mastershennetsind1-0/+1
* Follow up dedec165eaeb0d291279b1d5b53fac242bcf7b4c
2013-10-07Merge pull request #184 from cannelle/mastershennetsind1-2/+8
Added SC_WEDDING to unremovable status list and fixed baby experience skill not showing effect.
2013-10-07Fixed baby experience skill not showing effect.cannelle1-2/+8
2013-10-05* Follow up dedec165eaeb0d291279b1d5b53fac242bcf7b4cshenhuyong1-0/+1
-Update pre-re/skill_db.txt * Updated the const.txt to support the newest common status, as well as the latest NPC's. * Fixed a issue where the Dark Collector's assigned MAPID was incorrect. * Updated all Rebellion skills to have official ranges and SP requirements. -Also updated the skill_db entrys for these skills to have near official settings.
2013-10-04Merge pull request #167 from shenhuyong/mastershennetsind1-11/+18
* Fixed Bug #7713 And #7708
2013-10-04HPM: Hooking!shennetsind1-8/+7
http://hercules.ws/board/topic/2399-hpm-hooking-now-available/ Signed-off-by: shennetsind <ind@henn.et>
2013-10-03Merge branch 'master' of https://github.com/HerculesWS/Herculesshenhuyong1-34/+34
2013-10-02HPM: Map.c Completedshennetsind1-34/+34
Fully Interfaced. Moved missing vars and declarations of interest into the interface, removed duplicate mentions of map within calls to shorten wherever it made sense to. Ladies and Gentleman its my pleasure to announce that with this commit we've revised all of map-server, we've learned a hell lot from this, improved many things on the go and have a number of features to be released thanks to this. *cough* hpm hooking *cough*. Signed-off-by: shennetsind <ind@henn.et>
2013-09-29skill->castend_nodamage_id instead of skill_castend_nodamage_idshenhuyong1-2/+2
2013-09-29* Fixed Bug #7708shenhuyong1-6/+11
http://hercules.ws/board/tracker/issue-7708-mandragora-howl-chance-way-too-high/ Mandragora Howl chance --- way too high. Base on a patch of the fix made by Rytech in 3ceam.
2013-09-29* Fixed Bug #7713shenhuyong1-4/+6
http://hercules.ws/board/tracker/issue-7713-bnogemstone-reverted/ Per official behavior, Mistress card effect removes all gemstone requirements on all skills EXCEPT Hocus Pocus and Ganbantein.
2013-09-28HPM: pc.c Completedshennetsind1-8/+8
Moved missing vars and declarations of interest into the interface. Signed-off-by: shennetsind <ind@henn.et>
2013-09-28HPM: Party.c Completedshennetsind1-18/+18
Moved missing vars and declarations of interest into the interface, removed duplicate mentions of party within calls to shorten wherever it made sense to, and renamed some members to ease reading. Signed-off-by: shennetsind <ind@henn.et>
2013-09-28Merge pull request #161 from shenhuyong/mastershennetsind1-2/+2
Added full support for the Rebellion.
2013-09-27HPM: Skill.c Completedshennetsind1-538/+519
Moved missing vars and declarations of interest into the interface. Signed-off-by: shennetsind <ind@henn.et>
2013-09-27Renamed iMap interface to mapHaru1-561/+532
Signed-off-by: Haru <haru@dotalux.com>
2013-09-27Added full support for the Rebellion.shenhuyong1-2/+2
Credits to 3ceam2 for the base,Thanks to Rytech. -The skill still needs to be completed, as well as support for higher base stats. -Bonus stats are set to temporarily values until the official ones are known. -Updated the item_db.txt file with information on the Rebellion's job equip mask. -Added packets and packet keys for 2013-08-07Ragexe with the info provided by Shakto,Thanks to Shakto. -A 2013-08-07Ragexe client or higher is required for this job to be properly playable.
2013-09-27Renamed iStatus interface to statusHaru1-752/+778
Signed-off-by: Haru <haru@dotalux.com>
2013-09-26Renamed variables that would conflict with a rename of iMap to mapHaru1-49/+47
Note to plugin developers: if you were importing the "map", you'll need to change it to "maplist" Signed-off-by: Haru <haru@dotalux.com>
2013-09-25Renamed local variables that would conflict with a rename of iStatus to statusHaru1-74/+67
Signed-off-by: Haru <haru@dotalux.com>
2013-09-25Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-240/+231
Conflicts: src/map/chrif.c src/map/clif.c src/map/homunculus.c src/map/pet.c src/map/script.c src/map/skill.c src/map/status.c All clear.
2013-09-25Renamed iTimer interface to timer.shennetsind1-63/+63
Also removed duplicate mentions of timer within calls to shorten.
2013-09-25Renamed local variables that would conflict with a rename of iTimer to timerHaru1-2/+2
Signed-off-by: Haru <haru@dotalux.com>
2013-09-25Renamed more forgotten variables during interface conversionsHaru1-240/+231
(related: b9c8f57) Most renames are trivial (just to avoid shadowing global variables, even if they currently did no harm), but there were some cases of partly renamed variables that caused some NULL checks to always pass and who knows what could have been happened when they were too subtle to make the application crash. Also corrected some potentially unsafe macro definitions Signed-off-by: Haru <haru@dotalux.com>
2013-09-17HPM: Battleground.c Interfaceshennetsind1-1/+1
Fully Integrated. Closes #97 Signed-off-by: shennetsind <ind@henn.et>
2013-09-17HPM: Itemdb.c Interfaceshennetsind1-1/+1
Fully Integrated. Closes #110 Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Path.c Interfaceshennetsind1-12/+12
Fully Integrated Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Pet.c Interfaceshennetsind1-2/+2
Fully Integrated. Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Npc.c Interfaceshennetsind1-3/+3
Fully Interfaced. Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Unit.c Interfaceshennetsind1-103/+103
Fully Interfaced Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Mob.c Interfaceshennetsind1-53/+53
Fully Interfaced Signed-off-by: shennetsind <ind@henn.et>