summaryrefslogtreecommitdiff
path: root/src/map/clif.h
AgeCommit message (Collapse)AuthorFilesLines
2006-05-30[Optimized]: Lance1-0/+27
- clif_specialeffect to use the enums. [Improved]: - buildin_specialeffect and buildin_specialeffect2 to accept effect area definition. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6855 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-30- Small optimization in battle_check_targetskotlex1-2/+1
- Disabled ontouch npcs triggering on hidden/chase-walk characters. - Added the SC* code blocks relevant to SC_AVOID, SC_CHANGE, SC_BLOODLUST, SC_FLEET - Added structure status_data to homun_data - Added handling of BL_HOMUNCULUS in status_heal, status_damage. - Cleaned up the homun-submitted code, moved the relevant code to status_calc_homunculus. - Updated map-server Makefile to compile mercenary.* files. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6847 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-27- Added structure status_data which holds status-related information (str, ↵skotlex1-1/+1
agi, etc, speed, amotion, adelay, dmotion, weapon-damage, race, size, etc) and weapon_atk structure with the weapon specific info (atk, atk2, element) to be used by all combat structures (TODO: Homun needs to be updated to use it) - Cleaned up TBL_PC, TBL_MOB, TBL_PC and mob_db structures to use status_data. - Set the NPC-Change Attribute duration on Time1, updated their max to 1 in the db. - Berserk's HP cost interval is now defined as time2. - Split damage received functions into pc_damage/pc_dead and mob_damage/mob_dead - Rewrote the @heal related functions to use the new status_* healing functions. - Added status functions to deal with damage and healing (status_damage, status_heal, status_percent_change) and a bunch of defines for easier handling of them (status_percent_heal, status_percent_damage, status_fix_damage, status_kill, etc) - Splitted mob_once_spawn into two. mob_once_spawn_sub creates the mob instance without spawning it. - Added defines for Elements (ELE_*) - Modified battle_calc_(weapon/magic/misc)_attack to use the status data structure. - Rewrote and cleaned up battle_calc_misc_attack - Merged config options pc_attack_attr_none, mob_attack_attr_none, pet_attack_attr_none into attack_attr_none (type 4) - Removed config options player_defense_type, monster_defense_type, pet_defense_type in favor of weapon_defense_type - Cleaned up pet.c to stop invoking status_calc_pc when unnecessary - Modified skill_calc_heal to take into account the MEDITATION bonus. - Cleaned up code of Adjustment, Madness Cancel and other GS/NJ skills inside skill_check_condition - Added status change SC_MODECHANGE which handles mob state changes (this SC is continous until manually ended, eg: like Weight50) - Modified Slim Pitcher so it will work when casted by non-players. Will now also work with SP-healing items. - Rewrote Freedom of Cast code to use function status_freecast_switch to switch adelay/speed when cast begins/ends. - Modified Magic Power to store amplified MATK/MATK2 in val3/val4 for easier updating when used in conjunction with ground skills. - Fixed Asura Strike being usable from within a combo regardless of combo skill. - Modifed SC_DANCING to store speed-change in val3 (it is shared with skill duration...) - Added StatusChangeFlagTable to store which statuses are changed by each SC - Added SCB_* constants to specify the different stats that each sc changes. SCB_PC is the only one that means a change hardcoded in status_calc_pc, the rest are handled by status_calc_bl - Added some helper functions to simplify with basic status calculations (status_base_atk, status_calc_misc, status_base_pc_maxhp, status_base_pc_maxsp) - Added status_calc_mob which calculates initial status and special base status alterations (HP changes, stat changes due to big/small mobs, etc) - Made all the status_calc functions static. - Added status_calc_bl_sub_pc for PC related calculations that must happen after status-change adjustments. - Added status_calc_bl which does status-change related calculations using as base the base_status of the bl object and the SCB_* flag passed. - Added status_get_status_data and status_get_base_status to retrieve the bl objects current status_data and basic status_data (current never returns null, instead it returns a dummy structure with basic data) - The main switch in status_change_start now only sets the tick and val values, therefore it is skipped when loading (flag&4) - Cleaned up status_change_start and replaced many of the ex-japanese comments for english ones. - Changed Hiding to store the speed penalty on val3. val4 stores interval SP cost. - Changed Chase Walk to store Speed adjustment on val3, sp cost in val4 - Changed Cloaking to store speed penalty on val3, val4&2 signals wall-present, val4&1 is infinite cloaking. - Changed Wind walk to store speed bonus on val3 - Rewrote Marionette Control to store the status to add/substract in val3/val4, it now works on anyone (players/mobs) - Changed Improve concentration to store Card bonuses (which are not counted for total % increase) on val3/val4 - Changed SC_ADRENALINE, SC_CONCENTRATION, SC_ANGELUS, SC_IMPOSITIO, SC_MELTDOWN, SC_TRUESIGHT, SC_SUN_COMFORT, SC_MOON_COMFORT, SC_STAR_COMFORT, SC_QUAGMIRE, SC_GATLINGFEVER to store the bonus modifiers in their val values rather than calculate them in status_calc_* - Status_change_start/end will use clif_status_load rather than clif_status_change when related bl is not on a map. - Modified status_change_timer to use the status_charge function rather than directly substracting SP - Added SC_ELEMENTALCHANGE to modify someone's base defense element. - pc_clean_skilltree will now also remove item-granted skills. - Learning skills will now only invoke status_calc_pc when the skill is passive. - Cleaned up pc_steal_coin - Cleaned up pc_check_base/job_lvup to only invoke the lv-up related packets and functions ONCE regardless of skill-levls earned. - Cleaned up pc_ regen related functions. - Made player-sprite mobs have item pickup animation and walkdelay when taking items. - Cleaned up mob_dead code. - Removed paramb, parame from struct map_session_data, replaced them by param_bonus[6],param_equip[6] - mob special ai state 3 signals summon flora. - Moved petDB pet_hungry_timer vars from TBL_PC to TBL_PET - Cleaned up some pet functions, made the menu functions receive as argument both pet and master. - Clones will copy a player's base status rather than battle status (so status-change alterations are not cloned) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6791 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-21* Part A of the Homunculus code.blackhole891-0/+7
This only features the structures, status_* and clif_* (packets) and is not functional yet in any conventional way, but doesn't interfere with present functionality either. I would only forget half of this stuff if I tried to do all at once. Expect the rest somewhen within the upcoming week. (This is not similar to jA's implementation.) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6681 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-18- Applied an experimental weather code that should lower bandwidth usage to ↵skotlex1-1/+0
near-none, which's only disadvantage should be the weather not clearing out until moving to another map (even when the mapflag is removed from the current map). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6639 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-08- ES magic will now put the caster on stun for 0.5 secs regardless of ↵skotlex1-0/+1
whether the skill-target is a mob or not. - Added function clif_party_join_info which sends packet 0x1e9 each time a party-member joins. This packet (as redundant info as it has) should also contain the field for "adoptability", but that needs to be coded in yet. - Added clif_ParseAdoptRequest which does the basic adoption handling. More checks and the reply packets still need to be coded in. - Happy State and TK stances won't dispel on death now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6521 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-08- Removed SP_DISGUISE from the bonus list.skotlex1-1/+1
- Moved Sharp Shooting display to the block with Auto-Counter (since that's the other skill that can show critical as well) - Corrected some fields in the still packet (guild emblem being stored as a Long when it should be Short) - Modified most fields of view_data to be unsigned shorts rather than signed ones. - On-Touch NPCs will now make you stop walking when you trigger them. - Reduced stun duration of most skills to 3 secs. - ShadowJump/JumpKick will make you land on the target's cell now. - Fixed Kaahi triggering only once per skill duration. - Added the kaahi_heal_timer to the list of status change functions. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6516 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-29- Added support for packet 0x229 (clif_changeoption).skotlex1-1/+1
- Bumped up PACKETVER to 7 to enable use of packets 0x229 and 0x22c - Small cleanup on the calculation in the skill tree regarding spirit skills. - Added missing next/prev initialization in chat-creation. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6359 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-26- Updated item_db.sql to current.skotlex1-1/+0
- Some small code-cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6298 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-18cleaned the invisible fix a bit.Vicious1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6148 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-15- Removed the ->prev != NULL checks in skill_attack due to the fact that the ↵skotlex1-1/+0
code should check elsewhere how it should behave (eg: if traps are not cleared on death, stepping on one afterwards SHOULD cause damage) - Removed use of packet 0x1c9 for skill_unit display, except for Graffiti (which is the only unit which requires the much larger packet) - clif_getareachar_skillunit will sent the unit_id of UNT_ATTACK_SKILLS for traps (this is to prevent them from displaying on the client) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6091 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11- Changed clif_damage/clif_skill_damage to return the walk-delay based on ↵skotlex1-0/+1
the passed on damage-delay. - Changed battle_damage to accept the walk-delay as well. - Removed the walk-delay timers from unit.c, merged them to battle_delay_damage. - Traps will not be displayed when you walk within their range. - Added HT_DETECTING revealing traps. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5997 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-01- Added function clif_changetraplook to handle changing the appearance of ↵skotlex1-0/+1
traps as they are triggered (rather than using clif_changelook which is meant for view_data objects) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5852 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-01- Added structure view_data to handle sprite information for all characters ↵skotlex1-21/+9
(equipment, weapons, hair, dyes, etc). Unified a bunch of clif functions now that you only need to handle the view_data (so instead of clif_spawn[pc/mob/npc/pet] you just have clif_spawn) - Fixed the clif_change_class packet (it should check for non players classes, not a class above MAX_PC_CLASS), it fixes morphing enemies. - Rewrote the way cloth dye packets are resent to optimize bandwidth usage. - Fixed the npc_item_flag thing (enable_items/disable_items script command) - Rewrote the disguise implementation to be bandwidth friendly. - Modified the hide options to change your class to INVISIBLE_CLASS, since such classes don't even get their view packets sent around. - Rewrote several clif functions to adapt to the new view_data class; - Added class 139 to npcdb_checkid which was required by some npcs in the swordman quest? o.O git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5833 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-01* April fool! Improved soundeffectall script command. (No, this is not a lie)Lance1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5832 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-21Fix on not showing guildmembers logins/logouts messages.LuzZza1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5695 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-21- Modified party_send_movemap and guild_send_info_short to send the ↵skotlex1-0/+2
mini-dots to the player logging on. - Added functions clif_party/guild_xy_single to send the xy dots to a single fd. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5359 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-20- Added sd variables menuskill_id/menuskill_lv to store menu-based ↵skotlex1-3/+3
selections. These are used now to check the validity of skill use instead of sd->skillid/sd->skilllv - Affected skills/packets: AC_MAKINGARROW/ AL_WARP/ AL_TELEPORT/ AM_PHARMACY (all refine functions)/ MC_IDENTIFY/ BS_REPAIRWEAPON/ SA_TAMINGMONSTER/ SA_AUTOSPELL/ WS_WEAPONREFINE/ SG_FEEL - Removed feel_lv and repair_target variables as now they are handled by the previous two new variables. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5345 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-29AS OF SVN REV. 5901, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES ↵Valaris1-0/+343
GO INTO TRUNK. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EVERYTHING ELSE GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5094 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-29Clearing trunk.Valaris1-313/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5091 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-27* Added use dynamic allocation when loading the msg_tablecelest1-0/+1
* Refresh the client when day comes to get rid of the night effect * Changed @refresh to fake map loading, but without teleporting side effect * Updated SQL file for the item_db git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1307 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-02-26added new script commandsLupus1-1/+1
from jA git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1182 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-02-06get rid of a warning...(no author)1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1050 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-24More G++ work(no author)1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@976 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-23update(no author)1-4/+10
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@968 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-13* Updated packet_db.txt loading to support reading into multiple packet versionscelest1-1/+3
* Integrated packet size and function DB's into 1 packet_db * Removed packet_db_ver defining in packet_db.txt -- it'll determine itself based on MAX_PACKET_VER * Added MAX_PACKET_VER -- maximum versions supported by eA -- and changed packet size and function DB's to use it * When sending 'Game exe not latest version' packet don't close the session immediately so it will still be delivered * Added map-server display if an unidentified client was rejected -- also fixes the 'empty string sent to _showmessage' git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@965 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-11* Added a fix to @sound where if you forgot the .wav exention, i'd attempt ↵codemaster1-0/+7
to play the file without it (it adds the .wav) [Codemaster] [SVN 949] * Added @disguiseall / @undisguiseall [Codemaster] [SVN 949] * Added misc. clif.c fixes (jAthena added alot of close(fd)'s, so i added them, too) [Codemaster] [SVN 949] * Added bug reports - Celest, you might want to check one of those out [Codemaster] [SVN 949] git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@949 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-10Start adding packet DB readingcelest1-0/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@946 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-09* Added the @sound command and the NPC command of soundeffectall - works ↵codemaster1-0/+1
just like soundeffect, but plays for everyone in the area [Codemaster] [SVN 942] git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@942 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-12-27* Summoned monsters will not give exp and itemscelest1-0/+1
* Added the 6 new Yuno fields * Added some Freya's optimisations in clif_parse * Added clif_update_mobhp * Set alive_timer to -1 when quitting, not 0 git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@811 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-12-25git-svn-id: ↵celest1-0/+1
https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@785 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-12-23* Added clif_changed_dir, clif_adopt_processcelest1-0/+2
* updated Backstab git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@756 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-12-21* Updated most of map-server to 1082celest1-0/+1
* Removed my own additions for skill delays using aspd * Adapted skill_range_leniency to jA's code * Fixed drop rates only limited to multiples of 100's * Added missing code for castle_defense_rate * Removed pc_undead_nofreeze * Updated unrefineable items table * Added 3 new script commands * Added SC_SpeedUp0 * Merged itemdb_read for SQL and TXT * Removed itemdb_read_cardillustnametable limited to TXT only * Added reading itemslotcounttable.txt from the GRF to auto set number of slots per item * Added a display message when reading itemslottable from the GRF * Added options in battle_athena.conf to enable/disable reading the GRF git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@699 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-11-26Finished Full Strip, Weapon Refine, Slim Pitcher and Full Protectioncelest1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/athena@369 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-11-14Fixed some file typesamber1-287/+287
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/athena@172 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-11-13Fixed Attacking Mobs by using a file from FREYA (thanks MagicalTux and Yor)codemaster1-15/+5
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/athena@141 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-11-10* Corrected clif_sitting stuff.spira1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/athena@101 54d463be-8e91-2dee-dedb-b68131a5f0ec
2004-11-04git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/athena@2 ↵(no author)1-0/+297
54d463be-8e91-2dee-dedb-b68131a5f0ec