summaryrefslogtreecommitdiff
path: root/src/map/status.c
AgeCommit message (Collapse)AuthorFilesLines
2008-05-28* Updated Ankle Snare duration (bugreport:1438)Playtester1-5/+4
- agi now has only half the effect on the duration (100 agi reduces it by 50%) - minimum duration is 5 seconds no matter what git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12738 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-08- Added some new items and headgears.zephyrus1-10/+15
- Changed the way DEF Potion and MDEF potion works to official. - Cleanups to Barricade Engine. It now can be used in WoE 2.0, i will release optional scripts soon. - Fixes to @noks. Now if the mob is targeting someone else the protection get lost. - Added new status effects icons to cash items. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12693 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-07- Added function battle_attr_ratio to handle just getting the attribute ↵skotlex1-5/+18
table data. Fixes Sense messing up with elemental based statuses. - Added Throw tomahawk to the list of items that do not trigger the equipment breaking code. - Moved a bit around the SC_ start of dancing skills to fix Moonlight petals pushing back the casters. - Modified status_damage to handle SC_KAZIEL. The return value of *_dead functions can pass 8 to specify that kaziel should not be triggered (ie: pvp/gvg) - Infinite Endure won't be passed on to devoted characters. - Infinite Endure is no longer saved on logout. - Added check to avoid gms opening vending shops if they don't have the required level. - Moved around the Steel Body S. Novice code, simplified it so it triggers before most of the penalties (death is cancelled). - Fixed the flee penalty not applying when you walk into a gvg map. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12688 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-02* Changes to map_foreach* functions:FlavioJS1-2/+1
- removed the unecessary use of va_copy in map_foreachpc - applied the same function pattern to map_foreachmob and map_foreachiddb - created map_foreachnpc - extended the behaviour of map_foreach* functions to stop iterating when func returns -1 (also added missing changelog entries from ultramage >.>) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12684 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-01Implemented get_percentage() for compact and safe calculation of percentual ↵ultramage1-10/+0
values. Fixed integer arithmetic overflows that were occuring in several supernovice checks (bugreport:1135). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12679 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21* Changed the data field of timers from int to intptr.FlavioJS1-3/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12633 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-15 * Corrected some invalid syntax in skill_db.txt (wrong usage of commas)ultramage1-1/+1
* Renamed BA_FROSTJOKE to BA_FROSTJOKER (aegis server-side name) * Implemented a generic framework for parsing delimited db files (allows specifying min/max column ranges and max number of rows to read) * Corrected a typo in quest_update_objective() * Cleaned up pc.c a bit git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12599 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-08Lolbug.Kevin1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12541 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-07Improved the Mental Sensing fix from r12507 to not start the status at all, ↵ultramage1-1/+2
instead of starting it and ignoring it later on. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12519 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-06Equip speed buffs no longer stack with speed consumables other then speed ↵Kevin1-2/+7
potion. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12509 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-06Sprint, Fusion, and Increase AGI now stack independently. The other speed ↵Kevin1-21/+34
buffs still don't take affect if you have any of these three. (bugreport:1155) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12508 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-06Changed Union/Increase AGI stack fix (it should work now). (bugreport:1155)Kevin1-6/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12506 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-06Fixed seven wind not allowing ghost/shadow. (bugreport:1155)Kevin1-1/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12505 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-06Unequip should no longer remove any buff from seven wind. (bugreport:1155)Kevin1-2/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12503 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-06Union and Increase AGI now stack. (bugreport:1155)Kevin1-0/+6
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12502 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-05Running into a wall/npc/pc/mob no longer enables spurt. (bugreport:1155)Kevin1-1/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12498 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26Adjusted eAthena code to compile cleanly in C++ mode.ultramage1-37/+37
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-25Partially fixed the mess in status.c.ultramage1-378/+351
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12433 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-21- Added status changes for netcafe premium items. Status Resist Potion and ↵zephyrus1-2/+10
SP Reduction Potion. * More Barricade stuff: - Changed the way "Dir" works. Now it's just like NPC dir definition (from 0 to 7). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-20- Added SC_ARMOR_RESIST, used by Undead Scroll, gives you resistance against ↵zephyrus1-17/+30
elements and it's can be used with Resist Potions. - SC_ARMOR_RESIST and SC_BENEDICTIO ends if you change your armor. Tested on iRO. - If you call SC_ELEMENTALCHANGE with val3 = 1 it will use the level in val 1, and not a random value. * Barricades: - Fixed a bug when @reloadscript. Barricades should be destroyed too. - Unbreakable barricades are only wall type (not shootable) According to Doddler info. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12407 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-18- Changed the way SC_ARMOR_ELEMENT is called (Resistance potions)zephyrus1-4/+9
- Now each val represent an element (1 = Water 2 = Earth 3 = Fire 4 = Wind) - Fixed bug 1039 (Shadow Armor Scroll's Script Fails) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12393 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-15- Changed the way SC_HPREGEN works.zephyrus1-5/+5
- If you parse val1 as negative, heal will be a % of the maxHP. - On positive values it will heal a fixed amount. - Changed this to allow the new attributes of Battleground sets. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12367 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-13- Added a fix for Abracadabra, this skills allways should use minimum a ↵zephyrus1-2/+3
Yellow Gem. - Added some code "suggestion" to handle the new Barricades, please test it with: - @barricade <x> <y> <size> <direction> <killable> <Event Name> - @killbarricade <Event Name> - If x and y are -1, it will use your current position. - Direction 0 Vertical 1 Horizontal. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12352 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-05* Added code to clear the Illusionary Shadow effect (followup to r12293)ultramage1-0/+14
* Added some trim() calls into mapflag code (followup to r12238) * Fixed mvp exp reward packet not working right for big values * Added dbghelpplug plugin entry to the plugins configuration file * Added conf setting for auction table name (see r12287) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12300 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-05- Implemented Firepillar's 'target cannot move for 0.2 sec x hit' property.skotlex1-0/+3
- Corrected Earthquake so it behaves as explained in the development topics. - Corrected a missing opt_flag = 0 when using SC_INCATKRATE on mobs. - Added a missing line to actually unequip unallowed compounded cards when changing maps. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12299 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-04- Updated firepillar so it cannot be placed on top of others.skotlex1-10/+22
- Updated the firepillar code so it behaves like the other traps. - Changed the default format for @me and @main to avoid crashes on the newer clients. - Fixed the char-sql server so it returns a valid 'not found' packet when attempting to load a non-existing homunculus. - Fixed jump to use 0,0 for random coordinates rather than -1,-1 - Added missing \n to error reporting in getmonsterinfo - Additional status changes now only get triggered if the attack did damage, not if they get absorbed. - Fixed a logical comparison in unit_free to properly remove pets/homuncs when their intimacy is reduced to 0. - Properly set the opt3 value for Moonlight, Changeundead and Soul Link - Fixed the "no equip" flag of cards not being properly applied when attemting to equip items. - Added a check to avoid invoking pet menu entries when the pet is incuvated. - Fixed the session_data de-association in chrif_auth_delete - Cleaned chrif_auth_ok so that the latest received char info is kept when previous char login data was already in there. - Corrected docs mentioning non-existing flag 'mf_nopvp' git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12293 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-27Added missing option changes for Illusionary Shadow and Soul Link that ↵ultramage1-1/+19
disappeared when you left the screen (bugreport:1053) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12246 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-26- Added new settings for autotrade on battle/misc.conf (you can read ↵zephyrus1-0/+10
descriptions there). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12243 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-21- Added status_calc_life to properly calculate hp/max_hp as a ratio taking ↵skotlex1-4/+13
into accounts overflows (and for now also avoids divisions by 0). Applied this function around clif.c, mob.c and pet.c - Implemented the correct walk-speed bonus from the Bard/Dancer spirit. - Added a few error messages in case something goes wrong in the new auth db system. - Fixed logarithmic drops turning 0% drop rates into 100%. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12225 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-21- Fixed new guilds displaying online-connect member count at 0 rather than ↵skotlex1-6/+0
1, and the guild master not knowing it is one (eg: it cannot edit the guild notice of a newly created guild until relogging). - Fixed acc_reg2 parsing screwing up the char_id and subtracting 2 from it rather than passing it as it is. - Extended the auth_node/auth_db system in chrif.c to handle log in/out and mapserver-change procedures. This way players are not in the main dbs when they are not "active", which blocks potential invalid accesses to them. - Replaced states auth, waiting_disconnect and finalsave with active. - Cleaned some the party/guild login and creation procedures, removed the party_sent/guild_sent states. - Removed a redundant guild_check_member call which is beyond not-needed and into the realm of wasting resources. - clif_parse will no longer process packets from !sd->state.active players, this also makes checking for finalsave uneccessary (since players re already removed from the maps and dbs by this point, so you can't access them in any other way) - Separated the roles of unit_free and map_quit, the former will handle cleaning structures from the player so it can be free'd safely, while the latter performs additional routines which are unique to characters logging out normally (map-server changes will invoke unit_free and bypass map_quit). - Removed pc_isplaying, quit_db, map_knowsaccount, MAPIT_PCISPLAYING among other functions/defines which are no longer needed due to the new login scheme. - Cleand up a bit some code in the clif_send(_sub) functions. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12223 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-18- added LK's concentration +1 MDEF.skotlex1-1/+3
- Corrected delay-consume items being consumed when used while casting or being unable to act. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12216 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-17- Updated Eye of Hellion to use the new format of the input command.skotlex1-4/+11
- corrected login_fd/char_fd being uninitialized in the char servers. - Changed a bit around how status_base_atk works to avoid overflows. - Added a check to prevent using consume-delay items when you cannot use skills, since that opens an exploit if the item also has non-skill-casting components to its script. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12214 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-11- 'Forget me Not' no longer blocks ASPD bonuses from working or prevents ↵skotlex1-4/+2
their re-casting, they are simply dispelled when the effect takes place. - Fixed a possible crash when a player logs out before their create-party request is accepted. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12193 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-10Added two missing opt2 values, for Angelus and Bleeding status.ultramage1-21/+12
Cleaned up pc_statusup and pc_statusup2. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12190 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-04- Some code cleanups.zephyrus1-10/+11
- Added new Cell types (NoChat and NoDamage) - Added JobChangeLevel and FreeSKPoints to #stats - Added a Crash protection in clif_send with invalid fd values. - Merged a missing update in TK Mission. - Added script command 'getmapflag' - Merged some new Status Change to Stable. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12175 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-03Fixes to Devotion (see topic:153345)ultramage1-13/+8
- removed totally fake Devotion packet from Marionette Control code (see r3934) - fixed one devoted chars array management code bug which caused chars to be included in the array multiple times, producing various problems (also see r3934) - the link will now re-display when coming into view range - the link will no longer break if the devotee walks away, but instead, if he receives damage while being out of range of Devotion git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12171 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-03Added a missing client update when the mute status is manually cancelled by a GMultramage1-0/+5
(followup to r12079) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12169 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-20- Fixed a comparison whn doing item searchesskotlex1-10/+1
- Fixed hom_setting&0x2 conflicting with the 'view-range' limit check. - Stone curse now uses status_percent_damage instead of a precalculated value. - Merged the SA_MONOCELL and SA_CLASSCHANGE code. After changing class all the status changes that cannot be triggered on bosses are dispelled. - SA_CLASSCHANGE now uses the bloody branch list to pick a target MVP class. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12098 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-20Fixed yet another status code crash, this time when a stonecursed mob with ↵ultramage1-0/+7
high maxhp changes class to a Poring (see bugreport:621) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12097 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-15* Manner system fixingultramage1-1/+6
- better-than-aegis 'red bubble' packet updates; now it shows correctly - added support for /rc, which is basically mute for 60 minutes - fixed typo in r12076 making gm-mute start on the gm instead of target - fixed @mute not ending the status properly when using negative values - adde missing clif_manner_message(), sends info about manner updates git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12079 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-14Applied a temp patch to make some npc-executed atcommands work again ↵ultramage1-8/+8
(bugreport:790). Added support for right-click-gm-menu kicking NPC objects. Removed redundant function npc_checknear2(). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12073 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-14Simplified the BL_CAST macro (see topic:166795)ultramage1-9/+9
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12072 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-13- Fixed a compilation warningskotlex1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12071 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-13- Fixed dangling pointer crashes when bleeding or Deadly poison kills a ↵skotlex1-5/+11
spawn-once monster. - Fixed a possible ERS entry corruption when Deadly Poison kills a target that has kaziel active. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12069 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-13- Removed the sc_start_abort define. Since now when a status already exists, ↵skotlex1-21/+10
it is not modified in any way (no timer deleted, no sc->count reduced), it is completely safe to allow a simple return from within the rest of the function. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12068 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-13- Fixed a possible ers_entry corruption if you die from bleeding while under ↵skotlex1-1/+1
the effects of kaizel. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12063 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-13* Another possible fix to ers/status_change crashing.FlavioJS1-23/+31
- same logic as r12058 but in status_change_timer. - look out for this error: "[Error]: status_change_timer: Unexpected NULL status change id: ### data: ###" getting it means that a crash was avoided and the culprit found. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12061 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-12* Possible fix to ers/status_change crashing. [FlavioJS]FlavioJS1-10/+19
- this patch is untested. Didn't find anyone willing to test it and I can't reproduce the crash so can't test the patch. symptom: status_change_entry.timer is being modified after the entry is freed. ers uses that memory location as a pointer when the entry is freed, it crashes when accessing the contents when it points to an invalid location. assumption: status_change_start starts an already existing status. as a consequence of something called inside status_change_start the status is ended. when the sce is finally being modified, it's modifying a freed entry. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12058 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-10- Fixed getmonsterinfo to return "null" when returning the name of a ↵skotlex1-7/+12
non-existing mob instead of -1. - Extended the status_percent_damage define to include a bolean to specify whether or not the target can be killed from it. - Corrected CR_CULTIVATION to fail when the target cell has some BL_CHAR on it already. - Changed the meaning of 'flag' in status_percent_change, to enable differentiation between damage that can kill the object and damage that cannot. - Script command percentheal will no longer kill the player if the specified amount is negative (and not -100). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12051 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-10- Removed 'skill_steal_type' from skill.conf as said config no longer exists.skotlex1-19/+29
- Corrected @slaveclone/@clone behaving as @evilclone when you change the @ symbol. - Modified SC_ARMOR_ELEMENT so it grants elemental resist as if it they were card granted bonuses. - fixed a SA_DISPELL crash when casted on an object with no status changes. - Adjusted the autospell code so that it does not relies on card_id == 0 for subtracting rates. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12041 54d463be-8e91-2dee-dedb-b68131a5f0ec