summaryrefslogtreecommitdiff
path: root/src/map/pc.c
AgeCommit message (Collapse)AuthorFilesLines
2006-07-21- battle_check_target will now tag homunculus as invalid target when the ↵skotlex1-1/+10
source is a skill-type object. - Added a check on pc_equipitem so that when the client specifies to equip a weapon on the right hand when the left hand is available, the weapon will be sent to the left hand instead (when dual-wielding is possible, obviously). Same for the left/right accessories. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7816 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21- Added the vaporize line when the player dies in pc_dead.skotlex1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7809 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21- Small bug fixes found during merging to stable process, includes correct ↵skotlex1-1/+1
HP scaling when hp-meter is enabled and max hp is above SHRT_MAX git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7802 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-20- Added pc_check_weapontype to do a proper skill weapon check that takes ↵skotlex1-2/+4
into account dual-wielding. That is, if a skill can be used with daggers/axes, you'll be able to use the skill when dual-wielding them. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7779 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-20- Corrected fog of wall to behave as best known. Only takes effect when ↵skotlex1-1/+1
targetting a character inside it, -50hit/-75% damage when using normal-ranged attacks, -25% damage from all damage skills, 75% chance of all targetted damage skills of failing. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7764 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-19- Modified the targetted skill logic to enable offensive skills to be ↵skotlex1-0/+12
targetted at party/guild members if the appropiate inf2 value is set. - Added the SC_JAIL code for timed jailing, but the related @ commands ain't in yet. - Added checks to make adding items to inventory/cart fail when a char is in finalsave state. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7751 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18- Fixed a compile warning. Some minor format cleanups.skotlex1-2/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7733 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-17- Should have fixed the Cart Termination damage code to be scaled correctly ↵skotlex1-18/+32
when you change the max cart weight. Thanks to The Ultra Mage for the error clarification. - Implemented Grandcross weird property where if there's noone on the path it'll hit twice for the skill's reported damage, and when there is (or you cant knockback the target) it'll do a splash attack that hits twice for 500% to all affected targets. - Some cleaning of the combo code. TK Rankers will now get their combo-time extended each time they trigger a kick, enabling them to do "unlimited combos". - Modified the autosave function to use a sweep across the player db instead of across connected clients. This will cause non-connected players (like autotraders) to also be saved on a regular interval, may help with possible data-loss from said characters on unclean shutdowns. - Added function map_foreachpc - Removed the code that forces aggressive mobs to go after a Homun instead of their master (no reason why there should be such a condition). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7721 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-17Skill lv up fixDracoRPG1-1/+7
Manually updated VS8 char_sql project git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7710 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-17Orn's and Albator's Homunculus system, finally, YAY!!DracoRPG1-0/+26
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7706 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-13- Changed the default save interval to 5 minutes. Added support for ↵skotlex1-1/+8
specifying fixed save-intervals by using negative values. EG: - Save interval set to 300 (5 minutes): all characters will be saved in equal time-slots, so that everyone is saved every 5 minutes regardless of number of players online. - Save interval set to -1000 (1000 ms): One character will be saved every second, regardless of amount of characters online. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7657 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-13- Fixed the value range checks added by Zido on pc_bonus (some of them were ↵skotlex1-38/+28
even redundant...) - Fixed script command "recovery". git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7654 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-13- More typos... What's wrong with me today??Zido1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7650 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-13- Fixed a small typo in my codeZido1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7649 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-12- Added negative value in bonus exploit fix for more stat bonusesZido1-22/+44
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7648 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-12- Fixed negative value exploit (view changelog)Zido1-2/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7647 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11- Fixed being unable to compound cards in armor.skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7622 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11- Fixed clif_parse not checking for func_parse before sending data to the ↵skotlex1-36/+23
connected clients. This in turn required various code-rewrites in: - duel related messaging functions (added clif targets DUEL/DUEL_WOS). - intif whisper to gm function - day/night timers - Rewrote the parse_console function to stop allocating/deallocating memory on every call. - Modified chrif_charselectreq to receive the player's ip among the data. - Added function clif_disp_message, which is the same as clif_disp_onlyself, except you can specify the targets (it sends a guild-chat packet) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7617 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11- Coded @reset.skotlex1-41/+33
- Reenabled @changesex - Added function pet_create_egg which handles creating pet eggs correctly (when passed item id is indeed a valid petegg). Applied this on @createitem and getitem. - Cleaned up code of @item - Added define UNKNOWN_ITEM_ID (512 = apple) - Added IT_* enumation item_Types to identify said data from items. - Cleaned up the itemdb_isequip functions. itemdb_isequip will now return if the item is equipable by players, itemdb_isstackable returns if the item can be stacked, and itemdb_isidentified returns if the item should drop identified. - Added defines CARD0_PET/CARD0_FORGE/CARD0_CREATED to identify if a given item has "invalid" cards, added define function itemdb_isspecial to simplify this check. - Removed itemdb.c considering item ids above 20000 as invalid. - Cleaned up script commands getitem and card-counting related ones. - Cleaned up a bit more pc_isequip git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7613 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11- Corrected Frost Nova's splash range and Land Protector's cast range. ↵skotlex1-2/+3
Thanks to Haplo. - Fixed Beast Strafing not having inf2 = 512 (to make it a target-auto-select skill) - Fixed the duration of Land Protector, removed unusued time2 value from their entries in skill_cast_db. Thanks to Haplo. - Corrected Warp Portal being unable to warp people who are standing on it on the moment it triggers. - Fixed @follow stopping the moment you are warped. - Fixed pc_additem messing with the equip field of the passed item data. Fixes the famous "equip stuff on your arrow slot" bug. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7607 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-10- Added a check in pc_equipitem so that when switching weapons and you have ↵skotlex1-3/+15
the skill_range_by_weapon setting active, the skill info block (which includes range) will be resent when the new weapon to equip has a range different than the previous one. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7599 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-08- Fixed the new addeff structure not working well with SC_STONE (because ↵skotlex1-3/+2
SC_STONE is 0, which was by default not handled as a valid value). - Added back the TF_MISS walking speed bonus to assassin type classes (how did that got lost?) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7583 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Rewrote all the item restriction functions so that they will take into ↵skotlex1-4/+4
account slotted card restrictions as well. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7552 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Added EQP_/EQI_ constants in pc.h to identify equip position and equip ↵skotlex1-72/+68
indexes, makes equipping related code much easier to read. - Also cleaned up pc_equipitem. When dual wielding or equipping accessories, if the client actually specifies one of the two positions, it will be taken into account. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7550 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-04- Added structure s_addeffect to handle status change additions. Cleaned up ↵skotlex1-20/+59
relevant code. It is now possible to specify ANY status change, not just the basic ones. - Added support for bonus3 bAddEff/bAddEffWhenHit as follows: bonus3 bAddEff/bAddEffWhenHit, <SC value>, <rate>, <target flag>. Target flag is 0: Self. 1: Enemy. 2: Both. - Added these descriptions to doc/item_bonus.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7514 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-03- Fixed a compile warning in login sql/txtskotlex1-7486/+7484
- Fixed pc_makesavestatus not setting your logout position. - Fixed the UF * flags of Songs/Dances in skill_unit_db. - Fixed two dances becoming BA_DISSONANCE instead of DC_UGLYDANCE. - Added the missing +100% damage modifier of Enchant Deadly Poison. - Fixed SkillStatusChangeTable not working correctly for Homun/Guild skills. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7454 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-30- Moved item group enumeration from itemdb.h to map.hskotlex1-7/+9
- Cleanup in itemheal related code, fixed the item heal group bonus not working on Groups beyond 7. - Fixed pet's loot not being moved to your inventory on logout. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7419 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-29- Some indentation corrections.skotlex1-3/+3
- Ending SC_CLOAK/SC_HIDE/SC_CHASEWALK will now trigger ontouch npcs. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7394 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-29* [Fixed] Lance1-6/+7
- Scripting system screwing up script position after mixing timers with menus. - NPC attached AI mobs display as alive when dead. - View data not updating after buildin_unitdeadsit. [Improved] - NPCE_LOADMAP to execute after all (area) objects are sent to the player. - Simplified scripting system. sd will now use pointer to the script state itself. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7388 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-28- Added inf2 4096 (INF2_ALLOW_ENEMY) which is to be used in conjunction with ↵skotlex1-1/+1
INF2_PARTY_ONLY/INF2_GUILD_ONLY when said skill should ALSO be allowed to be used on enemies. - Updated Soul Change to use inf2 4096 (INF2_ALLOW_ENEMY). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7376 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-28- Corrected Musical Strike having a different damage equation from Throw Arrow.skotlex1-8/+3
- Some minor cleanup of Soul Change - Added state rewarp to players. It gets set when a pc_setpos call is triggered while the player is changing maps so that when the player finish loading the map, it is inmediately rewarped to where it has been rewarped/recalled to. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7370 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-26- Autospells will now again check for the skill's nk value, so that skills ↵skotlex1-1/+3
tagged "nodamage" skills will not trigger autospells. - A bit of cleaning in pc_equippoint - Corrected clif_item_sub so that pet eggs will correctly be sent as equipment (fixes them showing up "broken" and with random refine levels) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7341 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-24* [Optimized]: Lance1-6/+14
- Setting of variables with defined scope in some frequently executed script events. * [Added]: - Missing script_require_trigger flags for some power hungry events. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7325 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-23- Modified pc_setoption so that it will correctly update sprite AND clothes ↵skotlex1-29/+17
color when mounting/unmounting changing into/from xmas/wedding sprites. - Allowed itemdb_exists to return the dummy item. Enables "invalid" items to be sold, traded, dropped, etc. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7321 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-23- Added pc_bonus_autospell_del, gives support for removing autospell ↵skotlex1-0/+26
effects. When a negative rate is specified, it will decrease the chance of casting (eg: You have two different cards with autospell Heal +20% each, then do autospell -30. The second card will be cancelled, and the first one will become Heal +10%) - npc_timers now will not restore the previous timer data when there's no players attached (when it's strictly an npc timer). This should reenable the old behaviour of getnpctimer returning the total ellapsed time since "startnpctimer" even after the last label has been reached. However, this behaviour won't apply to player-attached timers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7312 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-21- Added function parse_hostbyname() which takes a hostname and a char[4]. ↵skotlex1-4/+4
The hostname is resolved to an ip, whose individual components are stored in char[], the return value of the function is the inet_addr result of the lookup (or returns 0 when failed). Meant to be used in the rest of the code without the need to do socket/network related includes. - Applied use of parse_hostbyname() in chrif.c to fix compilation errors. - status_percent_change will now account for when the target's max hp/sp is above INT_MAX. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7281 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-21- Some cleaning up of OPTION related code. OPTION_XMAS and OPTION_FLYING ↵skotlex1-0/+10
really ARE the same value clientside! (totally stupid), therefore I've opted from removing the flying animation since it really just displays as Xmas for others (and the correct fix involves adding a bunch of class-change packets...) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7270 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-17- Devotion absorbed damage will now appear to come from oneself (instead of ↵skotlex1-1/+1
the original attacker changing directions towards the Crusader) - Updated clif_refres to send inventory, cart, and weight info. - Fixed intif_guild_memberinfoshort to not leave a dangling pointer when someone logs out <.< - Cleaned up a bit guild_check_member git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7226 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16- Fixed option value being reset'ed on login (fixes cart/peco/falcon being lost)skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7217 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16- Removed unused variable aspd_rate in map_session_data.skotlex1-2/+2
- Modified aspd_rate in status_data to hold aspd change on a base of 1000 = 100% rather than 100 = 100%. All status changes that affect aspd have been updated. Study and Single Action should now correctly give +0.5% aspd per level. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7213 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16- Modified the bNoMagicDamage/bNoWeaponDamage bonuses to be a 0-100 setting. ↵skotlex1-4/+8
Meaning you can do bonus bNoMagicDamage,50; To make all magic damage be reduced by half. This bonus stack, so two cards with bNoMagicDamage,50 will give magic immunity. - Removed setting gtb_pvp_only and replaced it with gtb_sc_immunity which specifies the threshold before the bNoMagicDamage starts blocking support statuses as well. ie: gtb_sc_imunity: 75 will mean that "bonus bNoMagicDamage,70;" reduces magic damage by 70%, but does not blocks heal or support status, while "bonus bNoMagicDamage,80;" does. - Updated GTB's card script to be "bonus bNoMagicDamage,100;" git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7212 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16* [Improved]: Lance1-7/+2
- Cleaned up Custom Mob Script Callback codes. Looks much better now :B. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7202 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-15- Fixed "wedding_ignore_palette: yes" not working when relogging with the ↵skotlex1-5/+5
gear already equipped. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7189 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-15- Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas ↵skotlex1-8/+14
options. - Added back OPTION_XMAS, but the actual value is missing! - Corrected chrif_save so that the player is not set offline on map-change. - Added change-look support in pc_setoption when specifying OPTION_XMAS - Fixed clif_parse_RemoveOption removing all options instead of just Falcon/Cart/Peco git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7183 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-15- Fixed and cleaned up script command 'equip'skotlex1-3/+3
- Fixed 'autoequip' items. - Fixed Aspd not being updated in your status window after Agi/Dex increasing statuses take effect. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7179 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13- Added HM_SKILLBASE, MAX_HOMUNSKILL to specify the skill level range of ↵skotlex1-10/+10
Homunculus. - Added support for reading correctly status change data from Guild and Homun skills. - Added support for reading Homun skill data (which means the HM skills are now safe to add to skill_db, skill_require_db, etc) - Moved StatusSkillChangeTable to StatusSkillChangeTableArray and made a function called StatusSkillChangeTable to do the conversions taking into account HM/GD skills. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7128 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-12- Fixed npc_checknear's distance check returning the opposite of what it ↵skotlex1-5/+2
should (false when the range is correct and viceversa) - SL_STIN/SL_STUN have dex-reducable casting times now. - Added a warning on item loading when an item is of equippable type but has no equippable position. - Turning an alliance to an opposition won't work now during WoE - Slaves can summon other mobs now. The only ones who can't do this are player summoned mobs. - Merged the following functions for faster processing of items: clif_storageitemlist + clif_storageequiplist = clif_storagelist clif_guildstorageitemlist + clif_guildstorageequiplist = clif_guildstoragelist clif_itemlist + clif_equiplist = clif_inventorylist - Increased max knockback value support to 25. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7109 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-10- Added structure party_data and party_member_data to the map server to hold ↵skotlex1-9/+5
party-specific required information about parties including Monk/TK/SG/SN states and party member count. - party Hp updates are no longer done each time the Hp is modified, but together with the party xy timer. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7083 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-08- Cleaned clif_pvpset to not send the packet to nearby characters when the ↵skotlex1-4/+2
source is GM-hidden. May help fix the crash on PvP with gm-hidden characters. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7053 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-08- Fixed Sense using mdef instead of mdef2skotlex1-1/+0
- Fixed item-skills not showing up on login. - Cleaned up clif_parseLoadEndAck, by testing which packets are required only on first-login and which ones are required on all map-changes. Skill-tree, Exp, Skill Points and most of the basic status are no longer sent on map-change (items, carts, zeny still need to be sent one very map-change). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7042 54d463be-8e91-2dee-dedb-b68131a5f0ec