summaryrefslogtreecommitdiff
path: root/src/map/skill.c
AgeCommit message (Collapse)AuthorFilesLines
2007-12-09Changed Cloaking to not show an animation when it fails (thanks to Harbin ↵ultramage1-47/+54
for pointing it out). And while at it, also tweaked skill_check_cloaking() to use a more readable boolean logic instead of the previous zero-nonzero. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11877 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-09- Cleaned up a bit the code for HVAN_CHAOTICskotlex1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11875 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-08- Fixed a 'variable may be used uninitialized' error.skotlex1-2/+3
- Removed 'type' being passed to skill_trap_splash since it was not used at all. - Fixed Land Mine doing nothing. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11872 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-08- Changed the chaotic delay from block to delay since it just a secskotlex1-2/+0
- Fixed the longing for freedom check in unit_can_move - Corrected a check while parsing refine_db.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11870 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-07- Fixed ensembles skills.skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11869 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-29- Integrated the SG related info of hate_mob and feel_map into a single ↵skotlex1-14/+12
structure (sg_info). - Modified skill_blown and skill_attack so that reflected spells do not cause knockback. - SG Blessing skills now grant the extra experience to everyone when the SG killed the mob. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11840 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-28- Corrected skill_check_condition to not delete items right away for certain ↵skotlex1-33/+36
skills that do the deletion themselves. Fixes several skills consuming items twice. - Dispel's success rate is no longer affected by MDEF - You are no longer blocked from being warped when standing in a warp while in a duel. - Duels are now automatically ended when you warp out of the map you are in. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11836 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-28Fixed reflected spells bypassing WoE no-knockback restriction, because the ↵ultramage1-1/+1
code allowed that when cast on self; not anymore (bugreport:231) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11835 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-27- Corrected the online_data_cleanup routine setting offline characters that ↵skotlex1-1/+2
are still connected to the char-server. - Added a check in script command sc_end to properly end infinte endure - ASC_BREAKER no longer triggers status effect cards. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11817 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-24Fixed a crash when Slim Pitcher is cast (due to one unconverted piece of code)ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11796 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-23- Added a few missing skill fail messages on cast-end-pos skills.skotlex1-2/+9
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11787 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-22- Changed the status_change structure to use dynamic rather than static ↵skotlex1-350/+342
memory to hold the individual status changes, this should have a noticeable impact on the server's memory consumption. - Had to add a few 'ugly' flags to status_change since now you can't track SC related information while said SC is not active (happens only for Storm Gust, Joint Beat and Magic Power). - Since I am unable to fully test, watch out for any bugs~ git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11786 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-21random cleanupultramage1-3/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11767 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-21* Homunculi now reset their can-act delay on call/resurrect/mapchange ↵ultramage1-2/+0
(allows bypassing delays by doing rest/call instead of relog) [ultramage] * Changed Lif's Emergency Avoid to just get a normal skill delay (blocks all skills, cancelled by mapchange / re-summon) instead of getting a persistent block on only this one skill (bugreport:13) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11766 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-20- Implemented SL_SUPERNOVICE erasing the death record 1% of the casts.skotlex1-0/+7
- Implemented current exp being capped to the exp required to level up from the previous level when we are at max level (required for some S. Novice buffs) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11764 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-19- removed 'skill_fail' message when a ground skill fails as that caues ↵skotlex1-5/+1
double 'skill failed' messages in several instances. - Corrected shop freeing using free instead of aFree ,causing memory leak reports. - Corrected the sc def settings modifying tick_def in regards to sc_def instead of tick_def git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11762 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-17Removed battle_config.error_log as console_silent already handles thisultramage1-12/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11751 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-15- Added 2 new status changes for Life and Regeneration Potions [Zephyrus]zephyrus1-4/+14
- Fixed some items boxes giving wrong tamings. - Fixed another item giving 48 gladius[3] git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11738 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-13Added error reporting for invalid rows in skill db files.ultramage1-6/+12
Fixed skill_castnodex_db.txt not being parsed correctly. Fixed a search&replace typo in skill_db.txt. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11728 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-10Fixed a bug in r11384 letting you bypass requirements for some skills (see ↵ultramage1-12/+1
bugreport:219). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11710 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-09Replaced several 'int' variables with enums that they represent.ultramage1-11/+7
Expanded weapon_type enum with dual-wield constants (bugreport:384). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11704 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-06Fixed a crash caused by a mistake in r11657 (bad macro -> function code ↵ultramage1-7/+9
conversion) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11690 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-05Corrected the max. allowed skill name length, and optimized code that works ↵ultramage1-376/+320
with skill names according to latest changes. Changed skill db loading code to work similarly to how itemdb/mobdb is loaded (generic file loader + specialized function to process rows). * all skill db files are now checked for inconsistencies the same way. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11659 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-05Changed the skill_db.txt skill names in comments into actual columns, now ↵ultramage1-838/+192
the server reads these instead of a hardcoded array (see topic:170438). Corrected skill db loading code which was using a totally wrong column count in sevreal cases (or didn't do any checks at all). Cleaned up skill db lookup code * added some well-behaved functions to replace macros (skill_get_index) * used skill_get_index() to replace often occuring blocks of code that did the skill_id -> skilldb_index calculation in-line git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11657 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-02Removed some long-unneccessary debug messages (from r1105).ultramage1-31/+10
Removed function skill_count_target() because it's a duplicate (see topic:169337). Renamed skill_get_pl to skill_get_ele (because it retrieves element ids). The block_list structure now uses the BL_ enums instead of 'unsigned char'. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11640 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-02- Modified trap related code so it behaves as explained by Playtester: Traps ↵skotlex1-19/+6
trigger on everyone in their 'effect range' (skill_db's splash) for every target that lies within its trigger range at trigger time (range and interval in the skill_unit_db). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11634 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-31* Added names to the SC_ and SI_ enums, now they can be used to properly ↵ultramage1-3/+3
indicate where such values are to be used (replaces usage of 'int') * removed MIN_/MAX_PORTAL_MEMO, set MAX_MEMOPOINTS from 10 to 3 * removed support for @go-ing to your memo points * simplified the overly verbose @memo command; now re-uses pc_memo() * cleaned up pc_memo(), now uses semi-correct packet replies * Minor code cleaning/formatting git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11625 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-31- Fixed the pc_additem weight check breaking when your current weight is ↵skotlex1-1/+1
above your max. - Some minor cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11621 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-28- Corrected the firewall/kaensin knockback code to how it is supposed to be ↵skotlex1-2/+1
done (the element/race check was originally in battle.c, and it was moved to skill.c because of the firewall hits on undead setting, now that it is not needed the code can be changed to how it was back then). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11594 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27Removed 'petid', a command from r284 to look up pet ids by name.ultramage1-6/+3
Cleaned up some pet-related code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11586 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27* Fixed TXT charserver doing periodic random-sized memory allocation ↵ultramage1-53/+31
(bugreport:312) * Set 'Create Converter's produce success rate to 100% (bugreport:302) * Added check that verifies weapon/ammo/state requirements also when casting finishes (might have unwanted side-effects tho'!) (bugreport:228) * Fixed Firewall knocking back undead/fire element mobs (bug in r11578) * Added dummy 'openmail' to txt server to fix a script error message git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11585 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-26- Removed the config setting firewall_hits_on_undead setting, Firewall and ↵skotlex1-18/+16
kaensin now automatically calculate the number of hits they should do per iteration based on the skill trigger frequency (you may want to raise that delay of 1ms in the db, though) - Cleaned a bit the loop for the Warmth skills. - Added a mising pc_class2idx invocation (fixes a very minor bug when you request max skill lv for a skill in your tree with different max than the skill_db max) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11578 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-24* Cleaned up some messy guild code (more to come)ultramage1-8/+9
* Cleaned up the mail code, no more pointless dynamic allocation * Added upgrade_svn11548.sql to convert the mail table to new format * Updated vs7 and vs6 project files * Increased the max. send buffer size to 5M since 1M is not enough * Please complain if something stops working ^^; git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11571 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-22* Heat isn't supposed to consume SP when used against playersPlaytester1-3/+3
- please report if it still consumes SP in pvp git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11544 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-21- Removed SC_INCAGIRATE/SC_INCDEXRATE as they are not used anymore (and ↵skotlex1-3/+4
where even incompletely coded) - Added SC_INCASPDRATE, SC_INCFLEE2, SC_INCCRI, SC_INCDEF, SC_INCBASEATK and SC_FASTCAST as these are required by the newer items. - Cleaned a bit the implementation of Suffragium git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11535 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-20* Some more updates to the skill unit codePlaytester1-6/+6
- renamed SKILLUNITTIMER_INVERVAL to SKILLUNITTIMER_INTERVAL - Heat now depends on the interval settings rather than firewall_hits_on_undead - if you want Heat to do more or less hits you can now change the interval value in the skill_unit_db.txt (official+default: 20ms) - Icewall doesn't break anymore when the SKILLUNITTIMER_INTERVAL gets changed git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11526 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-19- Added bonusautoscript and bonusautoscript2. These are used to attach a ↵skotlex1-0/+34
script to a player which gets executed on attack (or when attacked). Required for several of the more recent items. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11519 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18Fixed some gcc-specific stuff, silenced some more warningsultramage1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11515 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18Fixed numerous /W4 warnings (and created more :)ultramage1-11/+10
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11514 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18* Further optimization of the skill unit codePlaytester1-27/+16
- removed code for Crimson Fire Formation it now uses the same code as Fire Wall - added same knockback behavior as Fire Wall for Fire Formation - Heat now does 50 hits a second in pvp too - please let me know of any bugs that might appear git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11510 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18* Optimized the skill unit codePlaytester1-21/+37
- reverted the unit timer interval to 100ms to save CPU usage - rewrote the unit code of Fire Wall, Fire Formation and Heat so that they hit every 20ms if the target wasn't knocked back despite of the unit timer interval - Heat now does 15 SP damage to players instead of 60 per hit - optimized memory usage - TODO: Renaming or removing firewall_hits_on_undead config git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11509 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18Some code cleaning...ultramage1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11505 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-17* Ground skill now can trigger every 20msPlaytester1-1/+1
- Firewall, Fire Formation and Heat now can do 50 hits a second - this was proven to be official behavior, but it will raise CPU usage git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11500 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16* Venom Splasher fixes according to bugreport:230ultramage1-5/+6
- added passive skillv*30% bonus from Poison React - added official splash damage calculation - damage gets split by the number of targets at range 1, then applied to all targets in range 2 - reverted some very old code - clif_calc_delay() - that was preventing skills from displaying properly, by erroneously assuming that if the target has ddelay 0, it has endure effect activated - TODO: the skill should not consume a gemstone when it fails git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11494 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16* Fixed a copy-paste mistake in disguise code (from r5833)ultramage1-96/+88
* Commented out clif_skill_damage2() as it is not used anymore * Made Venom Splasher a splash attack that distributes damage * Fixed displaying of several splash skills (see bugreport:238) - added flag SD_PREAMBLE for skills that need the 'magic' packet (fixes Grimtooth / Cart Revolution displaying out of sync) - hacked together Venom Splasher's "no animation for central mob" - hacked in a custom packet to make Dragonfear display semi-correctly git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11491 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16- Fixing TK Mission asigning non spawning mobs.zephyrus1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11485 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-15Implemented new skill "Enlarge Weight Limit R", and increased MAX_SKILL_TREE ↵L0ne_W0lf1-0/+1
by 1. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11476 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13* Fixed up NPC_POWERUP and NPC_AGIUPPlaytester1-2/+2
- NPC_POWERUP: 3x ATK and 2x HIT for 10+5*level seconds - NPC_AGIUP: 2x MOVE and 2x FLEE for 10+5*level seconds git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11450 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13* Some further changes to the delayfix functionPlaytester1-2/+3
- aftercast delay is at least amotion no matter what skill (this includes skills with cast time AND skills with skill delay!) - aftercast delay reductions can NEVER reduce the aftercast delay below amotion (this includes Bragi and Soul Links) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11448 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13- Again modified the delayfix function to reflect the current skill delay ↵skotlex1-6/+3
knowledge. Skills with 0 delay use amotion always (regardless of cast times) - Renamed the config default_skill_delay to default_walk_delay as that is the only thing it does now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11446 54d463be-8e91-2dee-dedb-b68131a5f0ec