summaryrefslogtreecommitdiff
path: root/src/map/skill.c
AgeCommit message (Collapse)AuthorFilesLines
2007-05-25Reformatting, warning fixes, unsigned char removalultramage1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10618 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-25Corrected some weird fgets() statements, plus reformatted themultramage1-11/+20
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10616 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-23- Added new flag to skill_castnodex.txt, to allow per-skill tweaking of cast ↵ultramage1-23/+24
time and delay reducibility by item scripts (cards and such) - Fixed Martyr's Reckoning never triggering for gms with all skills - Added MO_TRIPLEATTACK and RG_SNATCHER to @skillall's skill filter - Made gm_skill_unconditional bypass skill blocking (guild timer, etc) - Reverted the weird delay_dependon_agi thing (r8923, r9055, r9059) - Changed a few memsets to strncpy (reading past buffer is a bad idea) - Sped up some memset operations (multiples of 4 are faster) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10613 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-20* Added positional music effect to Battle Chant / Gospel, see r10588 on how ↵ultramage1-0/+1
to disable it if it annoys you ^^; git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10588 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-19Reformatting @_@ultramage1-160/+72
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-06* Fixed Converters not overwriting each otherPlaytester1-0/+2
- thanks to scerez for the fix git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10490 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-25- Corrected High Jump so it works on Guild Castles when WoE is off.skotlex1-3/+5
- Moonlit petals now always knocks to the back of the character rather than pushing the character away from it's center. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10355 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-24- Modified the mob ai think time update after using skills from ↵skotlex1-8/+2
adelay/amotion to 100ms since the previous method adds a large delay before the AI activates again (which screws up with the timing of idle/walk skills) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10348 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-24- NPC_MAGICALATTACK now starts a state similar to Sacrificial Ritual, in the ↵skotlex1-1/+5
sense that every normal attack afterwards becomes a Magical Attack. The skill duration is 15 secs. - Corrected some trade-cancel calls in trade_traderequest. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10346 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-24- The autoloot range check is no longer done unless AUTOLOOT_DISTANCE is ↵skotlex1-5/+2
defined (by default it is no longer defined) - Ganbantein now deletes individual skill cells instead of the whole skill in the area it is casted. - Modified the mob total damage code to prevent overflows when mobs receive over 2kM damage. - Made the dmg structure of the damage log an unsigned int rather than signed. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10343 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-24Spider Web / Fiber Lock status cannot be dispelled nowultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10335 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-23- All mob casted skills have a fixed range of 9 now. You can use ↵skotlex1-1/+6
monster_ai&0x400 to disable this and make the old skill range rules apply. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10331 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-22- Removed the include of features.h from the console.c plugin. It is ↵skotlex1-7/+1
apparently not needed (and it was preventing compilation on FreeBSD) - Fixed bug which totally broke item group bonuses. - Added warnings when setting a pvp/gvg flag removes the other flags on the same map (gvg and pvp can't coexist on the same map) - Optimized the unequip loop when changing sex. - Removed the check that prevented you from casting soul-collect when you already have 5 spirits. - Corrected Magic Rod so it doesn't displays any skill-use animation until it triggers. - Debuff on logout&2 is again set to default, instead of removing food bonuses now it removes Maximize Power, Maximum Overthrust and Steel Body. - Corrected Steel Body's icon (it actually belongs to AutoBerserk) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10317 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-22- Corrected crash if itemskill is used without an attached player.skotlex1-7/+1
- Removed range checks for autospells as per UltraMage Aegis tests. - Added chatID skill fail check to skill_check_condition - Corrected @refresh not re-displaying your spirit spheres nor re-setting your cloth dye. - Now the "number of attackers" in mob_dead is counted only from online characters on the same map. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10307 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-21- Removed the +25% mdef, -50% def effect from Freeze statusultramage1-11/+12
- Changed autocast skills, they now only work with normal attacks - Fixed a few spots where the attack_type flag was getting truncated - Hopefully fixed the cygwin + size_t problem (using stddef.h as source) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10298 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-18- Now @whogm hides perfect-hide gms only if their GM level is greater than ↵skotlex1-1/+1
the one who invoked the command. - Some minor cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10290 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-17- The gain exp from resurrection config will now only work when the revived ↵skotlex1-2/+2
player has yet to reach the last level (since otherwise it can give quite a lot of exp since the last level exp just keeps piling up) - Corrected unit_canmove so you can't move if you are vending. - Corrected npc_click so it won't let you click on hidden npcs. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10281 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-17- Expanded the autospell structure to hold a flag, which contains the ↵skotlex1-4/+11
required Battle Flag conditions required for a skill to trigger. - Added the required constants to const.txt to specify the autospell trigger properties. - Added bonus5 bAutoSpell/bAutoSpellWhenHit. The new parameter is used to specify when the spell should trigger (melee/range + weapon/magic/misc attack), see item_bonus for details. - Applied use of packet 0x28a (clif_changeoption2) to transmit opt3 changes. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10278 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-15- Fixed battle_getenemy picking dead characters.skotlex1-15/+36
- Adjusted Spiral Pierce, Shield Boomerang and Shield Chain to use atk2 instead of weight when used by non-players. - Adjusted skills blindAttack, SilenceAttack, StunAttack, PetrifyAttack, CurseAttack, SleepAttack, Lex Divina and Dispell to be area effect skills, if the used skill level has a splash-range different from 0. - Mob used Meteor Assault (and by extension Spread Attack) is able to hit icewalls now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10264 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12- Oops, little error on previous commit.skotlex1-0/+2
- And cleaned a bit the mob use skill code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10236 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12- Changed the meaning of inf2=0x1000. Now it is used to "disable usage on ↵skotlex1-4/+7
enemies", which only works for non-aggressive (inf!=1) skills. - If a skill is party/guild only (inf2 0x400/0x800) it will also be castable on enemies if the skill's inf is 1 (offensive target) - Corrected the mob behaviour when it locks into an enemy it can't chase. Previously it would get stuck on a lock->unlock->lock loop, with each unlock resetting the "random walk" timer, causing the mob to just idle in place. Now they will attempt idle skills and no longer reset the "random walk" timer, so they behave as if they were in Idle state properly. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10234 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-12- Added debug command @displayskill. Should be used only by people searching ↵skotlex1-3/+2
for new skill IDs. - Now the bonus bAtkEle will be transferred directly to the weapon when the script is in the ammunition, and you are wielding a weapon that consumes ammo per atttack. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10232 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-11- When a mob fails to use the selected skill, it will now move on to the ↵skotlex1-4/+0
next one in the list, rather than return from the function with fail status. - Mobs won't try to run away when rude-attacked if they have a locked-on target already. - Moved the teleport on LP fail check from castend_nodamageid to status_check_skilluse, this way unit_useskill will return failed when trying to use it. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10221 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-11- Some cleaning of the castend_map code to prevent the menuskill variable ↵skotlex1-5/+8
from not being cleared if you made a choice but the skill was not triggered (due to silence, stun or whatever). - Cleaned up a bit the Charge Attack casttime equation, should prevent infinite casttime when the distance is 0. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10213 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-10- Modified spirit of Wizard so that the consumption of 'Fragments' when ↵skotlex1-9/+39
blocking bounced spells will only consume 1 Fragment per skill casted, regardless of how many hits were reflected. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10207 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-10- Modified status_get_sc_def to handle both rate and tick reductions. This ↵skotlex1-3/+3
way it can take care of the fact that curse rate/duration reductions are not reduced by the same stats. - Removed wrong defines status_get_sc_def_[mdef/vit/int/luk], they actually had a rather undefined behaviour. - The pc_max_status_def mob_max_status_def configs are now set on a 1-100% scale instead of 1.00-100.00% git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10206 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-08- Updated some Guild WoE rules to behave as explained here: ↵skotlex1-0/+6
http://www.eathena.ws/board/index.php?showtopic=146581 - Removed the nosave mapflags from the Guild Castles, as per the previously linked topic. - Added some missing map_freeblock_lock calls to castend_pos and castend_id functions to prevent (rather unlikely) dangling pointer crashes. - Improved the debug message when the npc_scriptcont npc IDs don't match. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10187 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-06- Fixed the start_point setting smashing t3h stack in some situationsultramage1-3/+2
- Fixed some over/under-dimensioned arrays (the map length defines already reserve space for the string terminator) - Fixed an unupdated define making Warp Portal fail with an error - Fixed some skill entries of the Galion mob git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10168 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-06I'm still here!DracoRPG1-7/+7
Rewrote fame ranking lists- changed MAP_NAME_LENGTH to 12, now there's MAP_NAME_LENGTH_EXT at 16 for uses where there is / may be the .gat extension, code adjusted accordingly - moved map_normalize_name to mapindex_normalize_name so that everything handling map names uses the same extension-removing function - greatly enhanced the map cache generator, complete documentation on the tool and the map cache format can be found in doc/ - the map cache format changed a bit as a consequence, but of course a new valid one is included (contains latest Nameless Island maps) - fixed a duplicate entry in map index git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10167 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-29- Corrected a pretty serious typo in script.cskotlex1-1/+1
- Corrected the change that made Coma not be reduced by mdef making Stone, Freeze and Decrease Agi be reduced by luck rather than mdef. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10090 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-29- Added "do_abort" function to the core. It is invoked when the server has ↵skotlex1-1/+1
received a Segmentation Fault or Floating Point Exception signal. Currently the only one that uses it is the map-server, which then attempts to save all online characters before aborting. - Note that due to the current coding of the sig plugin, do_abort will not be invoked if you use it! This plugin needs to be updated... - Cleaned up a bit the change element code. val1 is the elemental level, val2 is the element now. - Hardcoded the element and elemental level of SC_CHANGEUNDEAD. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10089 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-27- Changed a bit the Moonlit code to prevent an infinite loopskotlex1-2/+5
- Changed clif_skillcasting definition to take as argument the element of the skill. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10083 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-27- Moved coma to skill_additional_effect, added special_state.bonus_coma to ↵skotlex1-39/+43
prevent doing comma calculations for every player attack. - Added config "vending_tax" to apply a tax to all vending requests, as it was in kRO Sakray some time ago (requested by Playtester) (items.conf). - Some cleaning of skill_additional_effect - Moved the starting of SC_DANCING from skill_initunitgroup to skill_unitsetting - Moved the checks for player_skill_partner_check and (gm_skilluncond for it) to skill_check_pc_partner - Negative aspd rate bonuses will be handled as aspd add rate since the default non-stackable bonus is useless on penalty bonuses. - Added check to prevent the client from using passive skills. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10082 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-26- Cleaned up some the mob skill use code. The skill re-use delay is set at ↵skotlex1-22/+4
the time the skill is used rather than when it finishes casting. The invalid target check was also moved to the mob skill db reading function. - Skills can be used now when the autoskill menu is open (since there's no packet sent by the client when you hit on cancel) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10074 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-25- Coma now reduces SP to 0 (with the exception of Dark Blessing)skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10069 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-22- Twilight Pharmacy's cast time is no longer reducable by dex.skotlex1-1/+1
- All weapon enchant levels now last 3 minutes. - Corrected Ankle Snare/Spider Web having a 1% chance to trap rather than 100% - Food boosts are now dispelled on death only. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10050 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-20- Increased Improve Concentration's hide-revealing range to 3 (7x7)skotlex1-1/+1
- Cleaned up a bit the Ankle Snare status code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10042 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-20- Added Magic Rod's "action" pose when using it.skotlex1-0/+1
- Corrected a pluralization typo in item_db.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10041 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-20- Removed Magic Rod's cast bar.skotlex1-5/+1
- Corrected warning on login sql. - Gravitation no longer causes damage flinch. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10038 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-19- Removed the last argument from skillitem, the skill name passed to the ↵skotlex1-18/+47
client should always be of the type "AL_HEAL" anyway. - Added skill ITEM_ENCHANTARMS, this is what weapon enchanting items should use. - Corrected itemskill calls in the item_db, also made the weapon enchanting items invoke the ITEM_ENCHANTARMS skill. Corrected Holy Egg not being type 11 (delay consume) - Updated item_db.sql with item_db information. - Added support for specifying different elements per skill level in the skill_db - Added bonus bNoKnockback - Corrected typo in bonus bSubRace2 (it was called bSPSubRace2 for some reason) - Corrected login sql server not resetting your account state to 0 when the banuntil duration expires. - Corrected use of UINT_MAX instead of INT_MAX in some jailing check. - Made the skillatk bonus it's own function, it can now be used to boost Heal/Sanctuary/Potion Pitcher and Slim Pitcher as well. - Cleaned up TK_WARMWIND to use the element acquired from the skill_db rather than hardcoded values. - Corrected Teleport's save map entry being sent without the .gat extension. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10031 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-19- Corrected Warp Portal not sending the map names with the .gat extension.skotlex1-7/+16
- Probably corrected Disarm's strip animation. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10029 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-19- Rewrote the jail logic to always use a status change. This means that the ↵skotlex1-2/+2
character's save point is not changed when jailed, and the char is always warped back to the point where it was before being jailed on unjail. - Made pc_setpos fail if you are jailed, effectively blocking you from being moved out of the jail map for the duration of jail. - Modified @adjcmdlvl so you can't set a command to require higher level than yourself, and so you can't edit the level of a command which is higher than your own. - Corrected attack_attr_none setting disabling elemental resist cards. - Added missing cap check of 100% to drop rate configs for heal/use/adddrop (cards)/treasures. - Corrected Autoblitz yelling the skill name if the attack splashed. - Corrected Dispell removing Jailed status. - Corrected being able to revive with 0 hp. - Modified the "Restart" code so that it makes you stand on spot when pc_setpos fails to move you back to your originating location. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10028 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-15Fixed compilation error added in r10003 in skill.ctoms1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10016 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-13- @pvpoff and @gvgoff will make everyone in the map stop auto-attacking now.skotlex1-11/+15
- when @killer is deactivated the issuer will stop attacking. - when @killable is deactivated, everyone around the user who is attacking the issuer will stop. - Cleaned up some the code for dispell. It no longer removes food boosts. - Players will stop attacking when they change their look. - Applied Alydis's fix to the mvp item logs logging mvp items even if the player couldn't get the item. - Changed the default of debuff_on_logout to 1 since food items shouldn't dispell on logout. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9997 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-12- Corrected the new packet version entries for skilluseposinfoskotlex1-0/+1
- Corrected item reloading not unsetting the "delay consume" flag if the item had changed it's type. - the Attack_Type variable in skill_attack now inherits the damage.flag properties, this fixes ranged status effects not triggering. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9992 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-07- Cleaned some up the add-effect code.skotlex1-12/+13
- Corrected ranged add-status only triggering if the attack is arrow based. - Updated counter add-status so they trigger on ranged attacks instead of using "arrow_atk" state. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9972 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-04- Added the +20hit that were missing the NPC elemental attack skills.skotlex1-5/+7
- Added support for autospells using "a random skill level". The last value of bonus4 bAutoSpell is used for determining this as well as the target. &1 is to cast on target (otherwise cast on self), and &2 is to use a random level UP to the level specified in the script (otherwise always cast the specified level) - Updated item_bonus.txt with the documentation for the bAutoSpell/bAutoSpellWhenHit changes. - Corrected @refresh not reupdating the basic stat bonuses. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9952 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-02- Modified the Storm Gust freeze counter code so it is resetted when ↵skotlex1-9/+7
standing on a different storm gust before landing the hit. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9951 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-01- Updated the stun length to 5 secs of: Meteor Storm, Sonic Blow, Throw ↵skotlex1-0/+8
Stone, Sightless Raid, Smite, Cart Termination - SG Union will consume now SP if you use it while not soul linked. - Added variable "skip" to the mob spawn data, to know how many mobs to skip when spawning because they were not removed due to the "mob_remove_damaged" setting. - Corrected the Hp/Sp regen formulas from Hp/Sp/Spirit Recovery and Happy/Peaceful break according to recent forums discussions (formula is changed from x*lv +max*lv/500 to lv*(x+max/500). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9944 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-01- Corrected raid not doing the "can hit?" check on splash area targets.skotlex1-1/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9940 54d463be-8e91-2dee-dedb-b68131a5f0ec