summaryrefslogtreecommitdiff
path: root/src/map/clif.c
AgeCommit message (Collapse)AuthorFilesLines
2006-07-21- Corrected the @follow timer not being deleted on logout.skotlex1-1/+3
- Applied the homunculus code fixes provided by Toms. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7820 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21- Small bug fixes found during merging to stable process, includes correct ↵skotlex1-2/+2
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 a skill_unit_db entry for NJ_HYOUSYOURAKU, thanks to Eus for the data.skotlex1-5/+8
- Added the dummy intravision case for the changeoption packet 0x229 - Corrected Fog of Wall so that all targetted offensive skills (not only those who do damage) will fail on cast-end 75% of the time. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7773 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-19- Corrected Trim chars to block 'enter', as explained by the Ultra mage.skotlex1-6/+6
- When the client passes account version 0, the login server will set it to 1 now. - Corrected the HP bar scaling when HP is above Short Max. It should display fine for any HP value now. - Added a check when the mob's adelay is shorter than the amotion, in which case the adelay will be changed to the amotion value. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7742 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18- Added atcommand @partyoption, lets you alter the party item-distribution ↵skotlex1-1/+11
type on the go. Usage is "@partyoption <pickup share> <item distribution>", where both arguments can be 0/1, yes/no, etc. - Updated @changeleader and @partyoption to use msg_Athena entries. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7737 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18- Added a proper check to make aggressive mobs never override homun targets ↵skotlex1-52/+81
regardless of distance. - Removed a bunch of homun-related variables that are not needed at all. The alive condition is removed, now the code checks for the hp value to know if the homun is alive or not. - Cleaned up a bit the skill-id function, homun skill checks (such as delay and skill-lv learned) should be correct now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7727 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-17Skill lv up fixDracoRPG1-14/+0
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-80/+217
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7706 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11- Fixed clif_parse not checking for func_parse before sending data to the ↵skotlex1-40/+84
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-23/+25
- 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-10- Added login-char packet 0x2737. Sets all characters offline (login-server ↵skotlex1-3/+4
side). - Cleaned up char server "set all offline" implementation to remove only characters from the map-server from which the packet was invoked. It will also now correctly kick/set-character offline from the map-server if they are connected. - Cleaned up the char-sql reconnect code. It no longer sets everyone to offline. - Removed setting "kick_on_disconnect", servers will no longer kick characters out when there's a disconnection. Instead, it'll use the most logical approach: Set characters into a "lost" state when there's a disconnection, on reconnect, resent the list of online-characters, do a sync, and let the difference be characters to be removed. Also, the map-server won't release character data until it's saved and the ack returns from the char-server to prevent data loss (all this data is resent on reconnect for saving anyway). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7600 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-10- Corrected skill require entry from the Twilight Pharmacy skills.skotlex1-1/+1
- Removed the Frost Nova entry from skill_unit_db - Moved Gospel's code to skill_castend_pos2 - Some cleaning of skill_castend_pos2 - Fixed a unnecessary map_freeblock_unlock call in the default case of skill_castend_pos2 - Sense/Estimation will now display the mob info window to all party members in the same map. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7595 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Removed the equip id from the clif_pet_equip packet as it is not used for ↵skotlex1-2/+2
anything. - Corrected the pet-armor field of the pet not being updated on equip/unequip of accessories, making them not show up inmediately. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7577 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Should have fixed clif_item_sub to properly store pet egg/armor data. ↵skotlex1-10/+10
There should be no more "random refine levels" bugs related to these. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7574 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Some cleaning of the Sage endow skills.skotlex1-1/+1
- Added a check to free a character from memory when changing map servers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7571 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Okay, added a chrif_save_ack packet to the char-server so now the map ↵skotlex1-10/+9
server will know once a character was "final saved", and only then the character will be removed from memory. On char-server reconnection, all chars that are in final-save state are resent to save (if they are still in memory, it's because the ack hasn't gotten here from the char-server). This should effectively block all dupe problems due to heavy inter-server lag, however as it's untested, it currently prints some debug messages when people are saved and then removed from memory. Need testers so this can be debugged and merged to stable! git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7568 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Rewrote all the item restriction functions so that they will take into ↵skotlex1-1/+1
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-03- Fixed a compile warning in login sql/txtskotlex1-4/+4
- 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- Small cleanup on Abracadabra.skotlex1-2/+10
- Added UF_SONG (0x400) to differentiate songs from dances. - Updated the skill_unit_db accordingly, ensembles should only have that flag, likewise for songs and dances. - Added preliminar support for making a Song+Dance turn into BA_DISSONANCE cells. Beware of potential bugs as it's untested. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7428 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-28- Corrected Musical Strike having a different damage equation from Throw Arrow.skotlex1-5/+10
- 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-27- Cleaned up the IP sync code to...skotlex1-7/+20
- Use charif_sendallwos rather than manually altering the buffers of each server. - Use the id variable for identifying current char-server instead of scanning the connected servers for it (it's doing the same work twice) - Added config setting sync_ip_interval to specify how long to go before updating ip. Defaults to 0 (disabled) - Sending ip update packets will only be done when the ip changed now. - Removed dns_str variables, and now char_ip_str/login_ip_str/map_ip_str will hold the unresolved dns address (as these variables have no use otherwise) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7360 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-27- Fixed indentation on int_pet.c (how did it got messed up?)skotlex1-6/+10
- Added mapflag "loadevent", now load-map script events will ONLY trigger on maps with this mapflag on, rather than every map. - High Jump can now be used in all versus maps. - Added Kaite's opt3 value, taken from jA - Added state dirty == 2 to storages. Signals when a storage was sent for final saving. Said storage is removed from memory after the ack from the char-server, and they are sent to save if the map/char servers reconnect before the act arrives. In short: they are guaranteed to be saved after a char logs out. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7358 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-26- Corrected unit id of desperado and Ground Drift using jA's info.skotlex1-15/+6
- Rough implementation of Ground Drift according to description and jA info. - Implemented Tatami Gaeshi using skill description and jA implementation for reference. - map_foreachinpath calls will no longer go beyond the target point, as this function is required for skills other than SharpShooting now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7344 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-26- Merged Mitternacht's max_heal/max_heal_lv config settings.skotlex1-22/+7
- Removed support of packet 0xc3 on the new packet versions. Thanks to Meruru for pointing out they aren't being used anymore. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7343 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-26- Autospells will now again check for the skill's nk value, so that skills ↵skotlex1-1/+1
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-3/+8
- 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- Standarized PF_MEMORIZE to be 50% cast time on all skills (instead of -50% ↵skotlex1-1/+1
for targetted skills and -66% for ground skills >.>) - Cleared up the comment on what item_check does and how it works. - Changed the pointer dummy_item to a normal struct variable. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7316 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-23* [Fixed]: Lance1-0/+1
- MAPREGSQL overloading SQL table with temperory map registries. - Incorrect perfomance calculation for MAPREGSQL loading and saving. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7310 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-23- Guessed and added support for the packets 0x22a (idle) and 0x22b (spawn). ↵skotlex1-20/+82
This should complete the required packets for PACKETVER 7. - Added support for the PACKETVER 7 packets in the "dummy" current intravision implementation. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7304 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-22- Tested and fixed resolve_hostbyname.skotlex1-40/+31
- Applied said function around most of the code where needed. Removed includes for the OS/network system pretty much from every file (our socket.c file should handle this) - Added clif_getip_long, which returns the ip as a long. Prevents having to include the files to define the int_addr structure in all files that include clif.h - Made the GM mute request bypass the manner_system setting. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7285 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-21- Some cleaning up of OPTION related code. OPTION_XMAS and OPTION_FLYING ↵skotlex1-5/+5
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-19- Removed the mysterious array of two of char_dat (char/sql server), ↵skotlex1-4/+3
replaced it with a static structure. - Added function char_loadName to extract the character name of a given ID. - Fixed fame-list updating crashing char-sql server when the given char-id just got into ranking. - Sorry I didn't check if it compiles cleanly because I don't have sql here <.< (am gonna test it in a second, though) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7248 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-19Idiot RO client have inconsistent signed/unsigned shortsLance1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7243 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-18* [Fixed]: Lance1-1/+1
- clif_initialstatus using SHRT_MAX instead of USHRT_MAX for status_point git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7237 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-18* [Removed]: Lance1-5/+7
- Large part of scripted mob control commands are removed. - Large part of scripted player control commands are removed. - Scripted mob slaves changing master ID. [Added]: - Unit control commands. - CALLBACK_NPCCLICK for scripted mobs, added this to db/const.txt too. - Macro RECURSIVE_MASTER_CHECK in battle.c [Modified]: - buildin_skilluseid and buildin_skillusepos -> buildin_unitskilluseid and buildin_unitskillusepos. - md->callback_flag to short (double word). [Lance] git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7233 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-17- Devotion absorbed damage will now appear to come from oneself (instead of ↵skotlex1-1/+8
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-17* [Added]: Lance1-1/+1
- buildin_checkcell, buildin_mobwarp, buildin_pcattack. * [Improved]: - buildin_skilluseid and buildin_skillusepos to accept a few more arguments. - mob_script_callback to return sucess value. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7219 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-17- Fixed the party HP packets to send max HP 10000 and scale HP accordingly ↵skotlex1-6/+21
when the player's HP doesn't fits in the packet's field. Fixes HP bars not correctly displaying the % of life when max HP is above 32k. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7218 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16- Merged Adam's patch to let the char-server handle validation of ↵skotlex1-1/+1
pet-name-change requests through the allowed char letters config. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7192 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-15- Altered a bit how status_set_viewdata behaves in regards to Wedding/Xmas ↵skotlex1-3/+4
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 clif_send not sending packets to SELF when specifying AREA if the ↵skotlex1-3/+5
source is not on the map yet. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7180 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13- Fixed a packet_ver error with the #defines in clif_spawn.skotlex1-5/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7145 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13- Fixed compilation error on clif.cskotlex1-3/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7135 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7130 ↵Lance1-1/+1
54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13* [Fixed]: Lance1-4/+5
- clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7129 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13- Added HM_SKILLBASE, MAX_HOMUNSKILL to specify the skill level range of ↵skotlex1-3/+3
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-13- Updated clif_disp_onlyself to not use dynamic memory and write directly to ↵skotlex1-31/+34
the player's buffer. - Updated @noask to also tell the rejected what he has just rejected (added msg_athena entries for each of the different requests) - Since noask already does a player lookup, updated the corresponding parsing functions to take the player rather than the player id (prevents double lookups) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7117 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-12- Fixed a pair of missing initializers in the clif storage functions.skotlex1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7113 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-12- Fixed npc_checknear's distance check returning the opposite of what it ↵skotlex1-388/+198
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-12- Made guild member exp an unsigned int.skotlex1-16/+33
- Modified npc_click to receive the bl that was clicked directly. Also cleaned it up so it isn't as easy to crash the server with invalid ids <.< - Moved npc_checknear to npc_checknear2 and added npc_checknear. The near version receives a bl, checks it's validity, and returns a TBL_NPC object, near2 does the same but doesn't checks for type NPC. The first returns a pointer, the second returns 1 on fail, 0 success. - Also uncommented various npc_checknear calls in the code, who's idea was to comment them out so you could exploit npcs from afar with custom packets? - Added overflow checks for bonus settings mdef_rate/def_rate. - Added missing update of INT after a buf. - Small cleanup of how SC_BLEEDING works. - Fixed party_foreach_samemap invoking the function on the CASTER instead of on the party members. - Added clif_parse_ActionRequest_sub to handle player commands, is used from npc_click or any other function that needs to "re-route" a player's request. - Modified clif_parse_NpcClicked to handle the different situations with different bl-objects (attack on players/mobs, click on npcs or mobs with npc attached) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7103 54d463be-8e91-2dee-dedb-b68131a5f0ec