138 Commits

Author SHA1 Message Date
toms
11a6e167d4 Fixed homunculus intimacy on feeding
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8362 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19 12:24:32 +00:00
toms
066765b702 Added homunculus_friendly_rate battle config
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8361 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19 11:32:41 +00:00
toms
e5b6eea02c Some compilation warnings fixed
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8360 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19 10:38:14 +00:00
toms
70f4570b81 - Little code cleanup
- Cleaned merc_hom_evolution to avoid free'ing/realloc'ing
- Fixed "args of aFree is freed pointer" on Homunc deletion


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8341 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 14:15:49 +00:00
skotlex
b5508efe38 - Changed unit_free so that it receives which cleartype should be used when 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://svn.code.sf.net/p/rathena/svn/trunk@8339 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 13:49:24 +00:00
skotlex
6babc24b69 - Vaporize will no fail when the homun is dead.
- 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://svn.code.sf.net/p/rathena/svn/trunk@8335 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 02:04:25 +00:00
skotlex
d91a956aee - Applied use of structure regen_data for a unified regen module. Natural 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://svn.code.sf.net/p/rathena/svn/trunk@8334 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 01:57:08 +00:00
toms
ed8b093cc2 - Corrected map_random_dir algorithm
- Fixed homunc natural heal and little code cleanup

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8327 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-17 22:38:25 +00:00
skotlex
7d04689685 - Fixed null-pointer crash on Evolving a homunculus.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8319 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-16 18:23:28 +00:00
skotlex
4e32d21c17 - Now arrow-consuming skills where your main weapon is a whip or musical instrument WILL count as arrow-type attacks, using the atk of the arrow and all related bonuses.
- Fixed some homun timer initialization code.
- Some cleanups on the pet.c code, but no idea if pet view will work correctly now.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8315 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-16 14:12:01 +00:00
skotlex
02c448cc45 - Moved the deletion of timers from unit_remove_map to the homun vaporize/dead routines since unit_remove_map is also invoked whenever you warp or change maps.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8309 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 23:39:12 +00:00
skotlex
5c44979d67 - Applied multiple fixes which should take care of making homun save/load work on TXT now.
- Added Gatling Fever's batk bonus.
- Some cleaning in status_damage which should prevent trying to free already free'd pointers when unit_remove_map invokes unit_free (when status_damage was going to invoke unit_free anyway)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8308 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 23:30:48 +00:00
toms
7110f02479 Homunc Timers should be disabled when the homunc is vaporized or dead an re-enabled on call/resu
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8305 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 22:30:10 +00:00
skotlex
a18db9e79f - Updated the char save structure for char-TXT servers so that the homun id will be saved, now also the map info (last point, save point, memo maps) are now saved using the mapindex rather than the string. BACKUP BEFORE UPDATING since this code isn't yet tested.
- Cleaned up a bit the char-saving code, added overflow crash prevention in case there are more memos than the max-allowed saved.
- AM_CALLHOMUN can now be used to recall vaporized homuns.
- AM_RESURRECTHOMUN will now fail when the homun is vaporized.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8295 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 17:47:44 +00:00
skotlex
9c6d56be63 - Asura Strike now moves you to the target on fail always (unless the target does not exists or is in another map or there's a obstacle on the way)
- Corrected skill_attack_area hitting dead characters on it's splash range.
- Swapped the values for OPTION_XMAS and OPTION_FLYING. This should enable SG to show the fly animation again, even if sometimes others will see him as Santa. As for xmas cloth, it shouldn't make much of a difference since the view class is changed to christmas anyway.
- Moved the AM_CALLHOMUN code from castend_id to castend_pos.
- Made AM_CALLHOMUN and AM_RESURRECTHOMUN be like the wedding skills, where they automatically pick a spot around you.
- Cleaned up some the AM_RESURRECTHOMUN code. Hopefully it works now.
- Cleaned up some the hom evolution code.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8292 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 15:26:51 +00:00
skotlex
6e5a887656 - Sacrifice no longer shows damage to self.
- When Asura fails, the skill display will still come off.
- Cleaned up AM_CALLHOMUN so that the required item is specified on skill_require_db
- Cleaned up function merc_call_homun and added function merc_hom_vaporize to handle the respective cases.
- Cleaned up a bit unit_remove_map/unit_free on regards to homun. it will display the /sob emotion when the homun dies due to low intimacy. Moved removal of timers and all that to unit_free
- Cleaned up function merc_hom_dead
- Simplified lots of code around by using the new merc functions.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8279 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-14 19:48:16 +00:00
toms
d7e51241f8 Code cleanup on homunc, they stay in memory until player disconnect or homunc destruction
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8241 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-10 23:34:35 +00:00
toms
4940b38ba3 Fixed homunc skill up bug
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8215 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-09 22:17:09 +00:00
toms
35b7140aec Updated item_db.sql to latest.
Little fixes on homunc (hp/sp are now saved and init stats changed)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8154 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-06 21:28:14 +00:00
skotlex
5d9e6b4a71 - GAHH, I am sick tired of typing TBL_HOMUNCULUS/BL_HOMUNCULUS all over the place. The idea is that the TBL* versions are supposed to be easier to use than the standard structure definition, but using TBL_HOMUNCULUS as an alias to struct homun_data kinda beats the purpose! Renamed them all to TBL_HOM/BL_HOM.
- Fixed using the right-hand weapon's size modifiers regardless of which weapon was being used.
- Simplified the ignore-size check by making the Weapon Perfection check be done when specifying the flag, also moved the size-fix property of riding spear-knights to status_calc_pc.
- Removed variable hd from status_calc_bl as it's not needed.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8112 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-03 19:45:12 +00:00
skotlex
19a4f0b31a - Recoded the GuildAura code to use val3 & val4, allowing much greater stat bonuses (in case someone wants to get Guild Skill level 20 or something crazy like that)
- Fixed compilation error...


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8053 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 14:55:14 +00:00
skotlex
7a082b02a8 - Updated battle_check_target so that all alchemist summoned mobs can be 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://svn.code.sf.net/p/rathena/svn/trunk@8048 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 14:27:17 +00:00
toms
ee5ee4fcd0 * Fix homunc & code cleanup [Toms]
- Timer problems on delete_timer
  - Intimacy problem (overflow & new values)
  - Homunc deleted if intimacy < 0
  - base exp is now given to master
  - Homunc sometimes not saved

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7913 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27 11:56:22 +00:00
DracoRPG
d42fb96de3 Random Homunculus cleanup
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7857 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-24 16:58:29 +00:00
skotlex
4289e1c98d - Corrected the @follow timer not being deleted on logout.
- Applied the homunculus code fixes provided by Toms.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7820 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21 23:45:53 +00:00
skotlex
67f1befafc - Corrected Venom splasher's splash damage
- You now can't move/attack/use-skills when using Cloaking of a level less than 3
- Fixed compilation of mercenary.c


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7729 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18 14:33:52 +00:00
skotlex
97b00a11ad - Added a proper check to make aggressive mobs never override homun targets 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://svn.code.sf.net/p/rathena/svn/trunk@7727 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18 13:25:21 +00:00
DracoRPG
15dd140846 Orn's and Albator's Homunculus system, finally, YAY!!
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7706 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-17 00:15:33 +00:00
skotlex
4d27716bf1 - Tested and fixed resolve_hostbyname.
- 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://svn.code.sf.net/p/rathena/svn/trunk@7285 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-22 01:12:52 +00:00
skotlex
89a6b23a92 - Added HM_SKILLBASE, MAX_HOMUNSKILL to specify the skill level range of 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://svn.code.sf.net/p/rathena/svn/trunk@7128 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13 15:06:16 +00:00
Lance
2e4166cbfc [Fixed]
- Yet another compilation warning. 

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6924 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-02 02:23:56 +00:00
Lance
9f1f9dacb2 * [Fixed]:
- signed/usigned problem in sprintf and fscanf @ mercenary.c

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6858 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-30 19:22:14 +00:00
skotlex
1d027c8db8 - Removed the on-die specific code from unit_remove_map and placed it on the corresponding *_dead functions. unit_remove_map should never assume the char died, it is just a "remove from map" function.
- Updated status_damage to handle the general death code (clearing status changes, clearing skill related data, sending death packet, etc). The return value from the *_dead functions will tell it what to do or not with the object (death aborted, clear it from map/memory, etc)
- Cleaned up pc_dead to take advantage of the fact that status changes are not ended until after the function.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6852 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-30 17:06:55 +00:00
skotlex
ccdafb2b70 - Fixed sql compilation of mercenary.c
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6848 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-30 15:37:43 +00:00
skotlex
1074b09187 - Small optimization in battle_check_target
- 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://svn.code.sf.net/p/rathena/svn/trunk@6847 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-30 15:29:17 +00:00
skotlex
f2cedb537e - Added functions status_revive, pc_revive and mob_revive to handle revival (it doesn't handles player respawning, though)
- Corrected alive, raisemap, raiseall to use these functions.
- Updated resurrection/mob-kaizel to use status_revive
- Added SC_BLADESTOP to the skill enum at the beginning of status.c (fixes Bladestop causing an unknown status change message)
- Fixed MSS_DEAD state skills not triggering.
- Corrected some compilation warnings on the merc.* files. 


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6807 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-28 17:58:56 +00:00
blackhole89
9cf042b0ee Fix possible compile mistakes in there. >_>
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6790 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-27 17:15:04 +00:00
Valaris
2178a86317 AS OF SVN REV. 5901, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES 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://svn.code.sf.net/p/rathena/svn/trunk@5094 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-29 16:10:48 +00:00