summaryrefslogtreecommitdiff
path: root/src/map/itemdb.c
AgeCommit message (Collapse)AuthorFilesLines
2007-02-01- Item search is now a bit smarter. When no item is found with the same ↵skotlex1-19/+13
'aegis name', then the 'normal' name is used instead. - Updated the @/# commands that take an item name so that you can use quotes when specifying item names with spaces in them. For example, @item "poring card" 1 will work now. Note that only the commands that work on ONE item have been updated, those that do an item list need to be updated as well. - Removed some garbage from the item_data structure. - Improved a bit the description of the mvp item get time config settings. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9767 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27Removed useless read-from-GRF featuresDracoRPG1-159/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9725 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-09- Changes to script buildin functions:FlavioJS1-6/+6
* functions checking if a player is attached as soon as possible. * functions that required a player attached and would crash if none was there terminate the script now. (others keep the current behaviour to maintain full backward compatibility) * removed the unused flag argument in guildskill. * bonus,bonus2,bonus3,bonus4 use the same function now (remains the same script-wise) * added an optional parameter to setcart,setfalcon,setriding so it's possible to remove the cart/falcon/mount or select a specific cart * other cleanups git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9636 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07Undid the memset->malloc_set replacementultramage1-7/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07- re-added the duplicit nj/gs name messages in msg_athenaultramage1-6/+6
- renamed atcommand_sub to is_atcommand_sub (charcommand too) - reformatted conf-tmpl's comments a bit - and a fix to the stable changelog to make my last commit more descriptive git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9625 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-27- Cleaned up item_misc.txtskotlex1-2/+2
- Fixed a bug which makes the group heal bonus be applied as many times as the item is in that group. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9578 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-22- Added support for the new "make new char" packet that has the rename ↵skotlex1-6/+6
button data. Thanks to Sara-chan for the format change update. - Fixed itemdb.c sql compilation - Now when you specify a max level beyond what the exp table has, the last entry of the exp table will be duplicated to fill in the remaining levels. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9558 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-22- Change strncpy to memcpy when parsing switches in the script engine since ↵FlavioJS1-5/+5
it's guaranteed to be a word of that size (skip_word). - Made scriptlabel_db duplicate the key. When str_buf is reallocated, the keys in scriptlabel_db could become invalid, causing a crash in npc_convertlabel_db. ( removed the readded >=0x81 equivalent ) - Now npc_convertlabel_db clears scriptlabel_db after using it. - parse_script has an extra parameter options. At the moment it only indicates if scriptlabel_db should be used or not. - Fixed "UINT_MAX undeclared" on systems that don't declare it in limits.h git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9557 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05- Massive EOL normalization & 'svn:eol-style native' flag setting for all ↵FlavioJS1-1277/+1277
txt/conf/h/c files. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-25- Fixed item group 35 (lottobox) in item_misc.txtskotlex1-1/+4
- Item group reading will now complain when a line doesn't has enough fields. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8865 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-15- Updated the item_db search functions so that when returning the ↵skotlex1-1/+5
dummy-item, it first updates the nameid to match the requested one, this prevents pc_additem later on giving you an item with ID 500 instead of the ID requested. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8764 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-27* Optional macro MEMSET_TURBO for faster low-level memory initializations.Lance1-7/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8499 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19- Fixed job-mask 0x100000 in the item_db enabling Dancers/Bards to use the ↵skotlex1-2/+3
items (0x80000 should be for them and 0x100000 should be currently unused) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8368 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-11- Fixed the item group bonus not working.skotlex1-1/+1
- Removed unnecessary member id from the item group structure. - Fixed songs/dances always being considered overlapped with themselves. - Added some additional song/dance overlap code that should correctly change the effect of songs/dances when they overlap. - Added a check so that the status-change packet is always send to self when the inflicted char is a player disguised. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8242 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-09- Should have fixed a signed/unsigned warning in login-txtskotlex1-0/+1
- Moved the class-change code from battle_calc_weapon_attack to skill_additional_effect. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8211 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-04- Changed function itemdb_group to itemdb_group_bonus, it now calculates the ↵skotlex1-22/+11
total group bonuses of a player for a given item. - Changed itemhealrate to itemgrouphealrate, added a structure itemhealrate to allow storing item-healing bonuses per item. - Modified bAddItemHealRate so it can receive both item-id and item-group values (since the first item-id is +500, there's no risk of mixing them up). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8136 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Synced the script.c file with as much data as possible from jA's:skotlex1-11/+11
- A lot of functions were moved around, a bunch of indentation and space-usage changes were done to make it easier to diff against their files. - Miscellanous addition and corrections were applied. - Largest one is likely a restructuring of run_script_main, which hopes to solve the memory leaks. - script engine now uses the setjmp functions to restore memory state when there's an error parsing scripts, which means that script errors won't cause the map-server to inmediately bail out anymore. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7926 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Fixed a memory leak when reading the item_db txt.skotlex1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7906 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-25- Cleaned up the skill_landprotector function to correctly block only magic ↵skotlex1-1/+16
skills from being placed on land protectors. - Corrected itemdb_group so that it will not return the random item givers (should give priority to actual item groups, so that the item heal bonuses work correctly) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7867 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21- Added a check to prevent Blind from ending while standing on a fog of wall.skotlex1-2/+2
- The mob Slave ai will be executed now even when the slave has a target. This will allow for "instant" warping to the master when it changes maps or teleports. if the slave has a target already, it won't unlock it and chase back to the master or anything like that. - Removed a couple of checks that prevents item ids above 20000. However, remember that the max id is still ~32k or the client is the one who's gonna crash! git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7799 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11- Coded @reset.skotlex1-47/+78
- 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- One closer inspection, removed that clear in itemdb_reload for a foreach ↵skotlex1-2/+11
call again. And modified itemdb_load to scrap the dummy item entry from the item_db and replace it with proper data for the item. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7597 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-10- itemdb_reload will clear the itemdb before reloading info instead of only ↵skotlex1-1/+1
clearing the scripts now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7596 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- itemdb_exists will now return NULL for item_id 0.skotlex1-1/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Rewrote all the item restriction functions so that they will take into ↵skotlex1-14/+29
account slotted card restrictions as well. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7552 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-23- Modified pc_setoption so that it will correctly update sprite AND clothes ↵skotlex1-1/+1
color when mounting/unmounting changing into/from xmas/wedding sprites. - Allowed itemdb_exists to return the dummy item. Enables "invalid" items to be sold, traded, dropped, etc. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7321 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-23- Standarized PF_MEMORIZE to be 50% cast time on all skills (instead of -50% ↵skotlex1-26/+20
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-17- Added IG_LottoBox for that tricky Lotto Box item.skotlex1-5/+6
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7227 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-12- Fixed npc_checknear's distance check returning the opposite of what it ↵skotlex1-7/+32
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-05-22* WARNING: New scripting system contains memory leakLance1-10/+10
TODO: Free all scripts using script_free_code() instead of old methods. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6690 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-28- Added function stristr to strlib.c, used by mob.c and item_db.c for ↵skotlex1-2/+3
case-insensitive seeks. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6345 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-25updated the db to X.2/X.3's itemsummonlist.Vicious1-0/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6277 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-25- Modified and simplified the random item group format. It now is ↵skotlex1-179/+87
<GroupID>,<ItemID>,<Rate>, where Rate normally is 1, greater numbers is the equivalent of adding the line multiple times. - Added constants to identify all groups to db/const.txt - Cleaned up and updated item_db to use these new constants (warning: item_db.sql needs to be updated!) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6275 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-20- Added two columns to item_db: equip_script and unequip_script are scripts ↵skotlex1-9/+107
that are executed once when the corresponding item is equipped or unequipped respectively. - Removed bonuses bDamageWhenUnequip, bLoseSPWhenUnequip - Updated sql-files/item_db.sql with latest. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6204 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11- Fixed various include lines in the map server (of the type <include ↵skotlex1-1/+1
"nullpo.h"> -> <include "../common/nullpo.h">) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5985 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11* Temperory replaced strtoll to strtoul until the function changes.Lance1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5983 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-09- Changed use of strtol to strtoll as strtol's result is just a signed int, ↵skotlex1-2/+2
and we need to parse values above 0x7FFFFFFF - Corrected Knives being usable by Gunslinger. SQL users use upgrade_svn5972.sql to ugprade that. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5972 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-08- Modified the equip_job field in the item_db to be a hexadecimal value for ↵skotlex1-11/+14
easier handling. - Updated item_db.sql to this new file format (even though it's equip_jobs field is still a integer) - Added upgrade_svn5951.sql for those who would like to convert their existing items. - Added doc/item_db.txt to explain each of the fields in db/item_db.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5951 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-06- Hopefully fixed the wedding item-trade restriction.skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5939 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-03- Oops, the overflow mentioned by foobar was actually because the equippable ↵skotlex1-1/+1
base-jobs field was unsigned short when we now need it to be unsigned int. Fixed now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5884 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-26- itemdb_exists and itemdb_searchname should now ignore dummy_item matches.skotlex1-1/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5755 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-16- Small change in the random item reading function, may fix @itemdbreload ↵skotlex1-0/+2
messing up random item searches. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5630 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-10missing } near line 449blackhole891-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5562 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-10- Cleaned-up the random item reading routine. Fixed a overflow bug when one ↵skotlex1-16/+31
of the files has too many random items. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5560 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-09- Moved a bunch of sc_effects that should be cancelled on hit from ↵skotlex1-7/+7
mob_damage/pc_damage to battle_damage. - Changed ITEM_NAME_LENGTH to 50. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5533 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-08- Added functions mobdb_searchname_array and itemdb_searchname_array which ↵skotlex1-0/+25
return an array of matches. - Modified @iteminfo and @mobinfo to search and display various matches instead of just one. - Constant MAX_SEARCH in map.h defines the max size of search results. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5512 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-08some NJ/GS fix.Vicious1-0/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5509 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-20* Updated item_bluebox.txt, item_giftbox.txt, item_violetbox.txt, ↵Komurka1-6/+9
item_db.txt, mob_db.txt, added item_cookie_bag.txt - new databases from Aegis 10.2 - implemented Cookie Bag item - added missing mobs - note: yes, I know that random item databases can be shorter (item_bluebox.txt, item_violetbox.txt, item_cookie_bag.txt, but not with current implementation of item randomizing for expamle: - there are 9285 items in item_bluebox.txt, and 1000000/9285 = real value - so line with Red Potion would contain rate = 1000000/9285*12 = real value (can't be) I think it's better to have bigger db, and do ONE rand check, than shorter and check it even 1000 times ~~ (in function itemdb_searchrandomid) so please, don't mess with them, or change them * Changed MAX_RANDITEM from 2000 to 10000 to fit new databases - Added reading of new file - item_cookie_bag.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5341 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-13- Made Land Protector Block Hammerfall.skotlex1-42/+51
- 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