summaryrefslogtreecommitdiff
path: root/src/map/mob.c
AgeCommit message (Collapse)AuthorFilesLines
2006-02-22- Added map chk cells types CELL_CHKREACH and CELL_CHKNOREACH, they are the ↵skotlex1-8/+4
same as their PASS/NOPASS equivalents, but will ignore the cell-stacking mod when enabled. - Updated path.c with jA's implementation, which should make long path searching more efficient. - Also added some typedefs from jA for the common structure types (PC/MOB/NPC, etc) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5366 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-21- Vending is now cancelled on a pc_setposskotlex1-1/+4
- Pressure again ignores Basilica. - Fixed attacker's sc being nulled when the target's sc is empty. - Slaves now do a battle_check_target to check if the new target is an enemy when acquired through sd->skilltarget. - Fixed SC_SKE halving defense2 twice. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5355 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-20- Corrected implementation of Gangster Paradise to just prevent mobs from ↵skotlex1-4/+13
targetting you. - Likely fixed Close Confine not unlocking the target when you move/are moved. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5343 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-18* Implemented SG_MIRACLE (Miracle of the Sun, Moon and Stars)Komurka1-1/+3
- duration is stored in battle_config.sg_miracle_skill_duration (currently it's set to 10 minutes) - ratio is stored in battle_config.sg_miracle_skill_ratio (currently it's set to 0.01% chance per character move) - this skill enables you usage of all Warmth skills, Comfort skills, and also all mobs will be target of the Stars regardless of the day and map - you'll see message "[Miracle of the Sun, Moon and Stars]" when skill kicks in git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5323 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-18- Added an alternate path searching method for non-stacking mode.skotlex1-11/+24
- Allowed pc_setpos to place players on top of cells that are stacked in CELL_NOSTACK mode. - Fixed a missing break that was making Heal, Resurrection and some others become attack skills x.x' - Fixed a logic bug in the mob-walk code that was making them get stuck and not move (triggered quite often when the cell no stack mod is enabled) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5320 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-17- Added NK value 3: No damage + area of effect skill (NK_SPLASH_NO_DAMAGE)skotlex1-50/+32
- Removed the double-cast specific code and made it use skill_addtimerskill instead. - Modified party_foreachsamemap so that it returns to addition of the return value of the functions invoked. Type has been changed for "range", when 0, it scans all party members in the map. - Updated most skill/battle code to use map_foreachinrange rather than map_foreachinarea. - map_foreachinrange does not performs an exact range check anymore. However the relevant code is commented and anyone can enable it. - Updated most skills to use skill_get_splash instead of hardcoded ranges. - Added function skill_get_casttype which returns the type of function that should be invoked for that skill: skill_castend_pos, skill_castend_nodamage_id or skill_castend_damage_id. - self skills are sent to skill_castend_nodamage_id regardless of nk (nk should signal if the skill causes damage above everything, it is used on autospell/effects). - Due to the previous change, self skills where the target and src are different, and don't have an nk of no damage, they are sent to castend_damage_id (assumed target auto-selected skills) - Applied the relevant updates to db/skill_db.txt, db/skill_unit_db also got updated, as trap ranges should all be 1, the splash damage range is defined now in skill_db - Cleaned up the implementation of the code related to Gangster's paradise and TK_HP/SPtime git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5313 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-17- Now you can't close-confine and already confined mob.skotlex1-9/+0
- mysql/my_global.h now includes winnt.h under Windows systems... - Updated SC_CLOSECONFINE to store the skill lv in val1 and the amount of locked targets in val2 - Some cleanup of status.c to use StatusSkillChangeTable where appropiate. - Removed the check that prevented mobs from walking into a basilica. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5303 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-16- In CELL_NOSTACK mode, mob_canreach will now ignore other players when ↵skotlex1-1/+5
checking if there's a path to the player. - Added RG_RAID to the list of skills that need a status_checkskilluse on skill_attack. - Added the mapflag check monster_noteleport to AL_TELEPORT. - Fixed the sc_def rate not being reduced in status_change_start. - The battle config options sp_rate and hp_rate are now applied independently of the same type of bonuses from cards. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5300 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-15- Some cleaning of the slave moving code.skotlex1-24/+20
- Fixed the icon for Provoke not showing. - Fixed skill_timerskills (type was not being stored, water-ball at least got broken, doing only 1 hit always) - pc_setinventorydata won't try to set data for positions with no item. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5283 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-14- Hiding cancels Close Confine.skotlex1-1/+1
- Added the move enable condition to High Jump and Jump Kick. - ST_MOVE_ENABLE now also checks for pc_can_move(), and only perform a walk check if the skill is ground targetted. - Moved the berserk_cancel_buffs code to status_change_start. - Moved most checks of status_isimmune() to status_get_sc_def - Allowed Endow skills to go through status_isinmune characters. - Added variable type to skill_castend_nodamage_id which holds the value of SkillStatusChangeTable[skillid] to simplify code reading afterwards. - Fixed PR_BENEDICTIO not taking away all SP - Fixed the most horrible typo ever. (SC_STAN -> SC_STUN) - Added StatusSkillChangeTable which returns the Skill for a given SC. Used in skill_additional_effect for SC cards. - Removed the whole ugly static implementation of SkillStatusChangeTable, see status_initChangeTables() for new format which is much easier to read. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5278 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-13- Made Land Protector Block Hammerfall.skotlex1-2/+21
- More signed/unsigned comparison fixes. - Added dummy_item variable to itemdb. It will be used on all itemdb_searches that do not yield a valid item from the db. - Added itemdb_load, which is the one used for item_db loading (if the item does not exists, it'll be created) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5270 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-13- NPC_POWERUP now gives +40% atk per level.skotlex1-12/+7
- Water elementals can be frozen again. - Fixed the sc_def equation in status_change_start - Fixed an extra semi-colon that broke win32 compiles. - Some rewriting of bounds checks in @baselvup, @joblvup and the # equivalents to prevent signed/unsigned comparisons. - Now slaves give exp/loot (exception: player slaves still stick to the old rules) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5267 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-13- Added handling of type BL_PET to skill_unitgrouptickset_search. I know ↵skotlex1-2/+0
pets normally aren't affected by skills, but their structure already had support for this, so.... - Rewrote/simplified functions skill_addtimerskill/skill_cleartimerskill - Fixed SC_DANCING for non players (was making dances only last 1 second for them) - Modified map_moveblock to handle calls to skill_unit_move_unit_group and cancelling of Close Confine effects, removed these checks from the walk functions and skill_blown functions. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5262 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-10- Added range checking to mob skill loading of permillage and delay.skotlex1-3/+9
- Fixed pc_gainexp not working for next level exp requirements above INT_MAX. - Fixed the display of @showexp not working right for exp values above INT_MAX. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5242 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-09- Added function mob_respawn which makes a mob respawn on spot 3 seconds ↵skotlex1-12/+41
after deafeat if SC_KAIZEL is active. - Modified NPC_REBIRTH to use Kaizel level 1. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5240 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-09- Code rewrites in mob_damage and party_exp_even_share for correctly ↵skotlex1-32/+51
handling overflow issues. Now uses UINT_MAX for range comparisons, as it should be. - Also modified the mob_db reading to use UINT_MAX for exp limits, changed their exp/job exp fields to unsigned int as well. - Modified multi_level_up behaviour to work as specified by Kyoki. - removed functions pc_next[base/job]after as they are no longer needed. - Modified the skill attack display of Meteor Assault and the Warm Skills (I think the caster should no longer do fancy animations now on each hit) - Added back water elemental targets being inmune to SC_FREEZE - Fixed the status_change_start line in charsave.c (I knew I was forgetting something) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5235 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-08- Cleaned up and reorganized status_change_start. Now it also receives the ↵skotlex1-1/+1
success % rate (0->100) - Added local function status_get_sc_tick which takes care of reducing the effect duration as need is be. - Modified status_get_sc_def to handle defense against all related statuses, now returns defense on a scale where 10000 is 100%. - Added time2 to pangvoice, it is the player effect's duration while time1 is for the mon's effect. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5227 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-06- Added define clif_deadsit to send the dead state into player packets if ↵skotlex1-8/+15
the player is in trick dead state. - Venom Splasher always hits (but splash damage targets can still avoid it) - Using autoloot with no arguments now toggles it between @autoloot 0 and @autoloot 100% - Falcon Assault now takes Blitz Beat lv5 as base damage. - Fixed pc_makesavestatus not updating status.option correctly. - Corrected Waterball so that higher levels can do insane amount of hits. - Altered slave behaviour. No more random walking, will stay within 2 cells of their master. - Reverted the Summon Slave behaviour to not adjust level based on number of current slaves. - Coma no longer sends SP to 1. - Updated Meteor so that when level 11 or more is casted, the area over which meteors fall is tripled. - Dark elemental characters are now inmune to Curse. - Fixed sc_data saving to sql buffer building method. Thanks to its_sparky. - Changed the map zone reading from using pow to a bit shift. - Experience has now been changed to unsigned int, and is read as such from the dbs. - Increased HT_DETECTING seek range to 7x7 - Added function map_foreachinrange which actually checks distance of nearing objects (unlike for each in area which uses a square area), may come handy for future code. - Corrected Venom Splasher: Being hit does not cancels it, works at 75% or less of target's HP, being hit normally while under the count has a chance of causing poison. Damage is +400% + 50*lv% git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5204 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-05* Added some of eAIRC bot code, written by me and LittleWolf. It is disabled ↵Valaris1-0/+6
and has no configuration options yet, as it is not finished. [Valaris] git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5201 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-02- Improved the NPC timer system to enable to have multiple timers going on ↵skotlex1-5/+2
at a time with different players attached to each. Now npc event timers are of two types: attached or global. The global timers don't have a player attached and can be started/halted by anyone. The character timers have a player attached, and they can only be stopped by a script that has the same player attached. - Now player attached scripts will auto-abort when the atteched player quits the map server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5167 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-01- Trick Dead makes you stop walking now.skotlex1-1/+1
- Falcon Assault only does 1 hit now. - Soul Burn is not affected by Lex Aeterna, not affected by target's cards. - Freeze and Stone take preference over Benedictio - Opt1 inducing SCs fail if the target has already another Opt1 - Fixed areamonster when the passed class is negative - Removed the clear screen when launching the server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5156 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-01- Fixed a typo bug in SC_STAR_COMFORT handling.skotlex1-58/+58
- Fixed a possible crash bug in SC_POISONREACT handling. - Simplified the skill trigger code for ST_PRESERVE, SG_FUSION, SG_*_COMFORT - Unified the status change variables into a single structure (sc_count, opt1, opt2, opt3, option, and the array of status change data) which should make it easier to handle sc related stuff. - TK_DODGE now won't trigger if your opt1 is set ;) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5154 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-31- Fixed skill_check_cloak to use the current skill level of the cloaking ↵skotlex1-1/+1
skill and not pc_checkskill() to know if a cloaker away from a wall should be uncloaked. - Likely fixed opening guild storage. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5146 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-31- Cleaned up Summon Slave mob skill to only summon number of missing mobs to ↵skotlex1-13/+10
complete the skill level (that is, SS level 5 will always bring the total count of slaves to 5, never above) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5138 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-31- Fixed being able to Encore skills you no longer have in your tree.skotlex1-0/+2
- Added no HP regen while Bleeding, -25% ATK and ASPD penalties as well. - Added VIT reduces duration of confusion. - Added MSC_SPAWN "onspawn" mob skill condition. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5136 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-30- Autoloot now uses the item's base drop chance rather than final drop rate ↵skotlex1-7/+7
to determine if it should autoloot the item or not. - Fixed super novices getting +10 to all stats temporarily whentheir death count isn't zero. - Fixed Kahai displaying HP-SP as the total healed instead of HP - Cleaned up skill_repairweapon to prevent crashes when the target vanishes/changes/whatever before the weapon to repair has been selected. - Parsing the Storage/Guild Storage from the char server will now fail if the storage has been modified and not saved yet. - Being hit now cancels confuse. - Added back the bleeding icon. - Fixed Combo Finish Soul Linked Effect being a 11x11 area o.O git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5121 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-30Moved MVP log code so it can log all MVP, not only when player gets MVP ↵Komurka1-4/+3
item, thanks to Hatred_ git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5113 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-29AS OF SVN REV. 5901, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES ↵Valaris1-0/+5020
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-4577/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5091 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-04-07* Readded @disablenpccelest1-16/+24
* Fixed @reloadscript not removing old NPC's and monsters first * Some changes in mob and NPC unloading * Changed the original @disablenpc to @hidenpc git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1429 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-04-03fixed impossible drops at 0.01% chance (e.g. CARDS, etc)Lupus1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1387 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-31More g++ fixes to make it cleaner [MouseJstr]amber1-10/+10
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1362 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-30* Added base code for loading Ser's UPNP plugincelest1-3/+2
* Added 'idle_no_share' to battle_athena.conf * Added item_findingore.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1343 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-30* updated map server to jA1137~1159celest1-36/+40
* Some tidying up in mob.c and skill.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1342 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-27* Moved guardian hostility checking and monster_ignore_gm check to battle.ccelest1-30/+24
* Fixed the 'show_mob_hp' option not updating when a monster is healed git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1306 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-26added logging filters. optimized ATCommands temp strings usageLupus1-0/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1302 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-25* Fixed indoorsrwstable.txt readingcelest1-63/+57
* Fixed @monsterbig/@monstersmall not working * Fixed @killmonster2 not working git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1293 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-24* Added 'map_charid2id'celest1-9/+18
* Changed monster damage logging to save char ID's * Implemented 'event_script_type' * Set Emsolute Develop as a learnable skill * Updated 'require_glory_guild' * Allow monsters to cast skills near themselves even when monster_nofootset is set to 'yes' * Print number of online users in online.txt/.html even if there's only 1 user git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1282 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-23memory bugs fixedamber1-0/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1278 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-23Fixed some compile errorscelest1-16/+16
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1273 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-22Check changelog ^^celest1-7/+10
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1267 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-20* Added 4 new card effects from 3/15's patchcelest1-14/+19
* Added 'enable_ip_rules' to packet_athena.conf * Updated socket debug messages to be more readable git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1257 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-20fixed @storage / @gstorageLupus1-4/+2
started using MAX_MOB_DB git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1256 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-14* Added auto convert advanced job and baby class sprite ID's in ↵celest1-7/+9
mob_avail.txt to correct format * Added SC_Speedup cannot be stacked with Increase Agility git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1232 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-12* Fixed Status Recovery dealing too short blind time on undead mobscelest1-21/+25
* Fixed mobs not affected by Blind status * Added an invalid id check check in map_id2sd * Added sd check in clif_send git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1226 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-12 * Fixed usage of mvp_hp_rate and monster_hp_rate. MVP rate was used ↵Lupus1-1/+1
for common monsters [Lupus] * Added additional random respawn delay for instant respawning monsters (0..5 seconds) [Lupus] - Should be made as an option of battle_athena.conf git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1225 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-11* Fixed "--en/ja--" usage in 'monster' script not working properlycelest1-2/+2
* Speedup player autosaving * Optimised guild castle saving when autosaving player data * Added sd check in mob_damage git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1224 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-08git-svn-id: ↵shinomori1-1/+1
https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1213 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-07* Updated core and map-server to jA 1115~1137celest1-7/+10
* Fixed a typo in Volcano git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1206 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-05fixed mvp droprateLupus1-6/+10
inverted option drop_rate0item git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1203 54d463be-8e91-2dee-dedb-b68131a5f0ec