summaryrefslogtreecommitdiff
path: root/src/map/pc.c
AgeCommit message (Collapse)AuthorFilesLines
2006-08-07- Added in Lupus's suggestion of not making multi-slot headgears set all ↵skotlex1-10/+13
slot view-ids, which supposedly causes the client to re-draw the headgear multiple times on characters. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8168 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-04- Changed function itemdb_group to itemdb_group_bonus, it now calculates the ↵skotlex1-7/+23
total group bonuses of a player for a given item. - Changed itemhealrate to itemgrouphealrate, added a structure itemhealrate to allow storing item-healing bonuses per item. - Modified bAddItemHealRate so it can receive both item-id and item-group values (since the first item-id is +500, there's no risk of mixing them up). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8136 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-04- Enabled Mastery damage on Soul Breaker again, moved adv katar mastery out ↵skotlex1-3/+3
of the mastery function so that it may apply to all skills except Soul Breaker. - Changed name of the setting log_pick to log_filter since that's what it does now. - Modified enable_logs so that instead of a 0/1 setting, you can specify which kind of events to log (so you can use a combination), see log_athena for the bitmask configuration. - Cleaned a bit the contents of log_athena.conf git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8129 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02- Rewrote pc_payzeny to not use doubles, it may more accurately prevent ↵skotlex1-5/+6
charging a player more zeny than they can withhold. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8072 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02- Updated battle_check_target so that all alchemist summoned mobs can be ↵skotlex1-1/+5
target by everyone. - Cleaned up skill_check_condition_mob_master_sub, it will now count both total number of summoned mobs and amount that belong to the same type. - Corrected AM_CANNIBALIZE so it will fail if you already have plants of another type out. - Using NPC_SELFDESTRUCTION no longer will make the caster stop walking. - Removed SI_GUILDAURA, and replaced it with SI_LANDENDOW, now Volcano/Deluge/V. Gale will get that funky icon instead. - Changed clif_hominfo to receive both sd and hd as parameters - Some redundancy cleaning in mercenary.c - Moved updating of sd->mercenary.hp from merc_damage to pc_makesavestatus. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8048 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-30- Added bNoMiscDamage setting so you can specify misc-damage blocking from ↵skotlex1-0/+6
skills. Modified battle_calc_damage so that even Pressure and similar skills will be affected by this setting. - Removed SC_LANDPROTECTOR as it wasn't being used by anything. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7982 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-29Fixed nullpo in merc_hom_skilluptoms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7974 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-28- Cleaned up the NJ update code.skotlex1-1/+1
- Restored code which was removed (stuff like SC_SKA) - Fixed possible crashes on some NJ skills if used by non-players. - Fixed most NJ magic spells doing more damage than they should. - Fixed ZenyNage being able to do more damage than zeny you have. - Cleaned up skill setting code for Suiton and Kaensin - Ordered SC_* definitions in status.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7947 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Added config setting party_update_interval so you can specify how often ↵skotlex1-6/+3
the party-mate minidots should be updated (defaults to 1 sec). - Removed a bunch of broken comments in skill.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7929 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-26- Modified party_item_share_type config setting so that using 1 disables ↵skotlex1-1/+1
item-sharing from non-mob loot (player dropped items or pet loot) and 2 enables round-robin instead of random sharing. Using 3 obviously is enabling both 1 and 2. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7898 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-24- Adjusted skill_castfix_sc so that Suffragium will get consumed even on ↵skotlex1-11/+7
instant cast skills, but Memorize won't. - Adjusted map_countoncell to receive the BL_* defines currently used instead of 0 to signal all. - BladeStop will now end when either of the characters is moved (knocked out?) around. - Moved the Zeny penalty code from respawn to pc_dead. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7859 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-23- Modified setting skillrange_by_weapon (skill.conf) to be a per-object-type ↵skotlex1-1/+1
setting instead of yes/no. The default now is that weapon-based skills will take the attacker's range for non-players. - Changed the default of skillrange_by_distance to include homunculus. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7844 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-22- Applied Toms's suggested corrections to homun code.skotlex1-0/+1
- Corrected Cannibalize/Marine Sphere ignoring the selected summon spot. - Fixed looting pets ignoring the item pick-up priority of other players. - Should have fixed a signess warning in login txt. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7828 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-22- Removed some pc_equipitem code that was added earlier today that wasn't ↵skotlex1-10/+0
really needed. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7824 54d463be-8e91-2dee-dedb-b68131a5f0ec
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