summaryrefslogtreecommitdiff
path: root/src/map/mercenary.c
AgeCommit message (Collapse)AuthorFilesLines
2007-08-30- Cleaned up a bit the homunculus evolution code, and fixed homevolution ↵skotlex1-2/+2
allowing the homunc to 're-evolve' even though it was already evolved. - Optimized a bit the skillheal code in regards to Apple of Idun and Sanctuary git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11090 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-24Fixed a rare crash concerning invalid homunculus data and one NULL-pointer.ultramage1-3/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11075 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-19* Cleaned/clarified some #include relationships between headersultramage1-5/+6
* Changed clif_sitting() to use 'bl' instead of 'sd' (for non-player objects) * Removed way messed-up script function 'unitdeadsit' * Tagged 'FIXME' lines written by myself git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11040 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-08- Changed the structure of the homunculus_db file so that the homunculus and ↵skotlex1-128/+208
its evolved version share the same line. Also added the evolution bonuses to it. - Updated the @homstats command to show evolution bonuses - Cleaned up the homunculus db structure. - Implemented the evolution stat growth bonuses. - Some small cleanups in the mercenary.c file - Corrected initial intimacy of a newly created homunculus (should be 21/1000) - Incremented the size of mob.c:summon.class_[] since mob_pouch has almost 350 entries. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10965 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-07-03Made Homunculus Resurrection only fail on cast-end (see topic:155223)ultramage1-5/+6
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10845 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-25Corrected some weird fgets() statements, plus reformatted themultramage1-3/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10616 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-09* Played around with MinGW a bit today...ultramage1-1/+0
- adjusted code so that it handles mingw-specific compatibility problems - adjusted the makefile, mingw is not a subset of cygwin * As an experiment Corrected many /W4 warnings on the txt login server git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10192 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-02- Corrected the login TXT server not initializing the waiting_disconnect ↵skotlex1-0/+2
variable. - Corrected the attack_attr_none check being backwards. - All pets can now move regardless of their Mob counter part setting. - Added hom_setting&0x40, when set it clears the "can't reuse" skill delay when you vaporize a homunculus (set by default). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10120 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-18- Removed the old 'mapserver charsave' mechanismultramage1-1/+0
- Fixed some wrong sql login logic - Fixed some compiler warnings, cleaned up mapserver sql-related vars git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10027 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-21Applied a consistent look to all header files (copyright, ifdefs)ultramage1-0/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9891 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07Cleaning up of the socket codeultramage1-0/+1
- Shuffled includes around for files that were leeching off of socket.h - Added code that enforces standard shutdown behavior for sockets git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9817 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27- Moved the pet rename code from int_pet.c to inter.c and normalized it so ↵skotlex1-0/+35
it can be used for any object. - Made homunculus renaming go through the char-server so it can be validated against the allowed characters setting. - Added battle config hom_rename so you can enable renaming multiple times your homunc. - Updated the hardcoded defaults for gvg-damage to what they should be. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9720 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-23- Cleaned the initializing for in the hom viewdata to make it overflow-proof.skotlex1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9700 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-23- Added view_data support to mercenary.*, so that the Homunculus entries are ↵skotlex1-0/+16
no longer required on the mob_db. - Removed homunculus entries from mob_db. - Added the status icon to NPC_CHANGEUNDEAD and the Flee/Hit foods - Corrected the check that lets you walk when vending/chatting/etc. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9697 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-20- Updated merc_reset_stats to handle resetting skill tree and points as well.skotlex1-0/+2
- Updated @homshuffle so that the skill tree and current skill points are not messed up. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9678 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-18- Modified the Storm Gust freeze counter code. It now takes into ↵skotlex1-0/+20
consideration the ID of the skill before increasing the counter, which should effectively yield the closest aproximation to official (even though the counter will reset if you step out of a SG and into another one, we do not know yet what should happen in such a case). - Added @homshuffle. It recalculates the homunculus stats, as if the homunc was sent back to level 1, and then releveled. This command is mean to help fix those previously created Homunculus that are much stronger than they should be. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9671 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-17- Corrected atcommand @homstats so it shows the correct minimum/maximum ↵skotlex1-76/+82
possible values. - Simplified the hom level up function, now decimal stats are no longer stored. This should correct eA's homunculus on average being much stronger than Aegis's. - Modified the homun db read code so it forces the "max" value to be higher than the "min". - Cleaned up pc_allskillup, @allskills should work correctly now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9664 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07Undid the memset->malloc_set replacementultramage1-3/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-23- Moved "#include <limits.h>" to cbasetypes.h to ensure it's included before ↵FlavioJS1-1/+1
checking if UINT_MAX has been defined. - Minor changes in pc_readdb related to max_level being unsigned. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9561 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-11- Spirit of Sin and Enchant Deadly Poison now stack.skotlex1-0/+2
- Fixed skill damage card bonuses not working on magic skills. - Moved the setting of sd->npc_id = 0 in npc_dequeue to the beginning, since this function is called when a script is cancelled (TODO: but when this happens, shouldn't the previously ongoing script also be free'd?) - Made homunc's speed be recalculated when you respawn it from rest state. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9453 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05- Massive EOL normalization & 'svn:eol-style native' flag setting for all ↵FlavioJS1-957/+957
txt/conf/h/c files. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-01- Fixed txt-converter compilation. skotlex1-2/+2
- Added my_global.h include to login converter - Removed sd->char_id since we can use sd->status.char_id instead. - Small speedup in STRECOVERY, and made it not unlock a mob's target. - Fixed GS_GROUNDDRIFT consuming ammo when it's time expires (so it was consuming 2 grenades instead of one). Also added a "explosion effect" when their time runs out. - gvg_dungeon mapflag won't set pvp related mapflags anymore, pc_dead will force pvp ranking gain/loss on gvg_dungeon maps now. - Now when coming out of hiding land-effects will trigger on the character. - Made the pc_setpos message when being placed on an unwalkable tile tell you which player triggered it. - Fixed land effects not taking effect inmediately on map-load when the invincible timer is disabled. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9374 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-29- Fixed (likely) deleting homs from the menu causing a double free'd error.skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9362 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-24- Likely fixed Homunculus not disappearing the second their intimacy hit 0.skotlex1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9313 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-24- Added all the missing FIFOHEADs in the login/sql servers (required for ↵skotlex1-3/+5
TURBO support) - Fixed the fact that the TURBO code breaks when you attempt to handle more than one connection at a time within the same function. However this broke map-server compilation, therefore, don't use TURBO yet! It needs more fixing (and I need more time to fix it) - While at it, cleaned a few packet implementations in the char/login servers which were not only ugly, but had some really stupid flaws within (stuff like escaping a string, and then using the non-escaped variable to insert to SQL? T_T) And will someone explain me why the TXT servers are coded much more cleanly, and without such horribly broken code as I find in the SQL ones? T_T; git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9307 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-22- Fixed the homunc hungry timer being started when the homun data is ↵skotlex1-2/+1
received from the char-server and the homunc is NOT 'active'. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9292 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-10- Fixed Homunculus being spawned as soon as they arrive from the char-server ↵skotlex1-1/+2
even if the Master has not spawned on the map yet. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9193 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-06- Ganbantein's delay is now 2 secs.skotlex1-2/+2
- Removed the time2 value of NJ_NEN since it has no use. - Removed the return code entry when logging GM reload-GM requests (login-sql),it'll just be stored as zero. - Added a fix on socket.c to not pick INADDR_ANY when choosing our own IP. - Applied the correction on maprespawnguildid so that it parses ALL players and not just those on a map. - TK_JUMPKICK now dispels normal aspd/speed potions (not berserk pitched ones) and Preserve will be unable to block this. - Soul Linkers are now inmune to SA_DISPEL - You can now place everything (except magic skills) on top of LPs. - Corrected Ganbantein to not touch song/dance/ensembles. - Status_calc_pc will refuse to execute if the player is still tagged as a "new connection" and the invocation is not meant to be the first one. - Swapped the order of checks in status_isimmune so that Wand of Hermod skill blocking takes precedence over GTB's - Client packets will all be ignored while a player is not on a map until the LoadEndAck packet is received. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9152 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-21- Some minor cleanupsskotlex1-23/+19
- Fixed the Homunc not spawning next to you after receiving it's data from the char-server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9035 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-20- Fixed Charge Atk being able to go through chasm/pits.skotlex1-206/+163
- Moved the homunculus DB information from the player structure to the homun structure. Modified the homunculus creation packets to hold this information during creation, also, all initial values are handled by the map-server, the char server only assigns it a homun ID. - Removed target_id/attacked_id from homun_data as it wasn't really used. - Codes cleanup (removing of commented code mostly) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9031 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-12- Moved the packet_len variable in login.c to the login parse case, since ↵skotlex1-2/+4
it's used nowhere else. - timestamp check speed-up in showmsg.c - Swapped the blank ShowMessage on server startup to a printf - Homunculus intimacy will go back to 500 on evolution. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8719 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-31- Moved the intimacy penalty of HFLI_SBR44 and HVAN_EXPLOSION to ↵skotlex1-11/+2
skill_counter_additional_effect - Simplified skillnotok_hom by using an invocation to skillnotok - Hopefully fixed BD_ADAPTATION - Homun won't lose any intimacy on death now. - Homun will be saved together with the master now (as long as the homun is active) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8564 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-30- Fixed char-sql compilationskotlex1-7/+7
- Added support for reading the item_db_db inter config settings (char-sql) - Fixed some compile warnings (functions with no arguments should have a (void) instead of ()). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8546 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-28- Fixed homun hp/sp growth rates stacking with HP/SP passive increasing skills.skotlex1-4/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8514 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-27- Updated svn-revision reading, now it can read the new svn file systemtoms1-2/+11
- Fixed a bug with homunc which could spawn on a non-walkable cell git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8500 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-27* Optional macro MEMSET_TURBO for faster low-level memory initializations.Lance1-3/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8499 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-26Small bug fix in read_homunculus_expdb (a warning was always displayed)toms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8495 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-24- Cleanup/typo on homunc's codetoms1-182/+191
- Modified @reloadmobdb & @reloadskilldb to reload homunc's db too git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8476 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-21Fixed call homunc bug when the homunc was vapo and the master has change of maptoms1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-21- Homun saving won't cap hp/sp to max hp/sp since a homun can have higher ↵skotlex1-4/+5
hp/sp than the one stated in the db (due to skill bonuses or status changes) - Increased splash range of HVAN_EXPLOSION to 4. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8411 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-21Fixed AM_RESURRECTION, thanks to RockmanEXE for %HP valuestoms1-1/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8409 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-21- Removed config setting "muting_players", and expanded the manner_system ↵skotlex1-2/+2
config to specify how having negative manner (mute) affects a player (see battle/misc.conf). - Expanded the pk_mode setting from no/yes to 0/1/2. 1 is normal pk_mode, if 2 is used, it makes killing players give you a loss of 5 manner points. - Fixed WS_WEAPONREFINE always failing when at less than job 50. - Fixed a compilation warning in char-txt/int_homun.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8402 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19- Updated NJ_BAKUENRYU skill treetoms1-0/+1
- Fixed HLIF_CHANGE skill git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8365 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19Fixed homunculus intimacy on feedingtoms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8362 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19Added homunculus_friendly_rate battle configtoms1-0/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8361 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19Some compilation warnings fixedtoms1-0/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8360 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18- Little code cleanuptoms1-11/+19
- Cleaned merc_hom_evolution to avoid free'ing/realloc'ing - Fixed "args of aFree is freed pointer" on Homunc deletion git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8341 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18- Changed unit_free so that it receives which cleartype should be used when ↵skotlex1-3/+3
the character is still on a map. Used this on status_damage so that mobs that do not respawn when killed will properly display the death animation. - Should have fixed the signed/unsigned comparison warnings in the main regen function. - Fixed Energy Coat consuming 10x less SP per hit than it should. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8339 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18- Vaporize will no fail when the homun is dead.skotlex1-9/+11
- Corrected thhe double free issue that occurs when a homun dies and has no intimacy left. - Fixed the charsave_method:1 saving/loading exp as signed ints rather than unsigned. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8335 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18- Applied use of structure regen_data for a unified regen module. Natural ↵skotlex1-83/+7
and skill-heal is handled by this structure, while sitting-skill-heal is still player dependant (mostly because the other object types can't sit) - Added SCB_REGEN constant to identify status changes which alter regeneration - Modified SC_REGENERATION so that if val4 is set, the status actually blocks regen rather than increase it, this is what now Frenzy uses instead of "canregen_tick" - Cleaned up the status calc code for homun by moving it from status_calc_bl_sub_homun to status_calc_homun (where it should had always been) - Moved the Fleet watk code to status_calc_watk where it belongs. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8334 54d463be-8e91-2dee-dedb-b68131a5f0ec