Changed exp_calc_type to 1, as type 0 seems to be based off old rumour, and to compliment the update to mob_revive.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13264 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Implemented Mercenary Die, Damage, Run Away when master dies.
- Log mercenary damage and gives exp to Master.
- Some little bugs.
* Fixed Bubble Gums effect works on mvp_sd not sd (according to Doddler).
NOTE: Now you can summon a mercenary, make it attack (not skills), follow you even on map change.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13158 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Update of all project files.
NOTE: All functions on homunculus.c should be renamed i think, to remove all the merc_*.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13122 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Monsters with SC_KAIZEL should not trigger event script until.
- Monsters NPC_REBIRTH should not be casted if no source (killmonster script or @killmonster)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13047 54d463be-8e91-2dee-dedb-b68131a5f0ec
The system consists of
* script command to spawn a controlled mob
* script commands to attach npcs to such mobs and manipulate their AI
* a page of documentation for these commands
* callbacks at various source code locations that invoke the attached npcs
* two npc examples
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13021 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Changed the way DEF Potion and MDEF potion works to official.
- Cleanups to Barricade Engine. It now can be used in WoE 2.0, i will release optional scripts soon.
- Fixes to @noks. Now if the mob is targeting someone else the protection get lost.
- Added new status effects icons to cash items.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12693 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added Throw tomahawk to the list of items that do not trigger the equipment breaking code.
- Moved a bit around the SC_ start of dancing skills to fix Moonlight petals pushing back the casters.
- Modified status_damage to handle SC_KAZIEL. The return value of *_dead functions can pass 8 to specify that kaziel should not be triggered (ie: pvp/gvg)
- Infinite Endure won't be passed on to devoted characters.
- Infinite Endure is no longer saved on logout.
- Added check to avoid gms opening vending shops if they don't have the required level.
- Moved around the Steel Body S. Novice code, simplified it so it triggers before most of the penalties (death is cancelled).
- Fixed the flee penalty not applying when you walk into a gvg map.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12688 54d463be-8e91-2dee-dedb-b68131a5f0ec
- removed the unecessary use of va_copy in map_foreachpc
- applied the same function pattern to map_foreachmob and map_foreachiddb
- created map_foreachnpc
- extended the behaviour of map_foreach* functions to stop iterating when func returns -1
(also added missing changelog entries from ultramage >.>)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12684 54d463be-8e91-2dee-dedb-b68131a5f0ec
Rewrote map_foreachpc() so that its callback function signature now uses a more natural 'sd' instead of a DBKey/void* pair.
Rewrote atcommand_users() to use a single function, instead of depending on two helper functions and global objects.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12683 54d463be-8e91-2dee-dedb-b68131a5f0ec
Fixed integer arithmetic overflows that were occuring in several supernovice checks (bugreport:1135).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12679 54d463be-8e91-2dee-dedb-b68131a5f0ec
* the player data inventory-itemdb index is now refreshed using pc_setinventorydata()
* mobdb will no longer initialize with nonexistent items, and mobs will no longer drop them in case of a reload
* the clif_buylist() function once again hides invalid npc shop items
* it is no longer possible to purchase nonexistent items from a npc shop
* npc shop loading will not abort if there is a nonexistent item entry, it will just skip over it
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12665 54d463be-8e91-2dee-dedb-b68131a5f0ec
* Renamed BA_FROSTJOKE to BA_FROSTJOKER (aegis server-side name)
* Implemented a generic framework for parsing delimited db files (allows specifying min/max column ranges and max number of rows to read)
* Corrected a typo in quest_update_objective()
* Cleaned up pc.c a bit
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12599 54d463be-8e91-2dee-dedb-b68131a5f0ec
- known bug: ui components that are displaying the emblem at the time (emblem in flag npc and emblem over head in gvg maps) are not updated, but putting the mouse over the target shows the new emblem
* Modified script command 'guardian':
- returns the id of the guardian
- if guardian index isn't supplied, it generates a temporary guardian
* Implemented support for temporary guardians (not saved with castle).
* Added missing includes from r12520.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12525 54d463be-8e91-2dee-dedb-b68131a5f0ec
- map.h is no longer a generic dumping spot of all the shared structs, and instead, each such structure now resides in its logical component
- map.h now only holds mostly map-related things (needs more cleaning)
- there's still a lot of room for improvement (reorganization within individual header files, etc...)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12429 54d463be-8e91-2dee-dedb-b68131a5f0ec
* More Barricade stuff:
- Changed the way "Dir" works. Now it's just like NPC dir definition (from 0 to 7).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12414 54d463be-8e91-2dee-dedb-b68131a5f0ec
- SC_ARMOR_RESIST and SC_BENEDICTIO ends if you change your armor. Tested on iRO.
- If you call SC_ELEMENTALCHANGE with val3 = 1 it will use the level in val 1, and not a random value.
* Barricades:
- Fixed a bug when @reloadscript. Barricades should be destroyed too.
- Unbreakable barricades are only wall type (not shootable) According to Doddler info.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12407 54d463be-8e91-2dee-dedb-b68131a5f0ec
Also added a check to not respawn mobs on maps with no players (potentially unsafe operation, needs further inspection).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12402 54d463be-8e91-2dee-dedb-b68131a5f0ec
Changed the dynamic mobs system, so that the flag that indicates whether a particular mob can be unloaded is stored in the mob's respawn data structure.
Cleaned up related parts of the source code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12358 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added some code "suggestion" to handle the new Barricades, please test it with:
- @barricade <x> <y> <size> <direction> <killable> <Event Name>
- @killbarricade <Event Name>
- If x and y are -1, it will use your current position.
- Direction 0 Vertical 1 Horizontal.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12352 54d463be-8e91-2dee-dedb-b68131a5f0ec