summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-01-30 17:38:39 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-01-30 17:38:39 +0000
commitbed9459f0edafeab823aa4c0a473828e77e43c15 (patch)
tree1fef3bbf08bb8d7b68307df619daad521aab53f6 /src/map/skill.c
parent6f24a7748e12e3dd2e24153bd0a5382d89273b98 (diff)
downloadhercules-bed9459f0edafeab823aa4c0a473828e77e43c15.tar.gz
hercules-bed9459f0edafeab823aa4c0a473828e77e43c15.tar.bz2
hercules-bed9459f0edafeab823aa4c0a473828e77e43c15.tar.xz
hercules-bed9459f0edafeab823aa4c0a473828e77e43c15.zip
- Corrected char deletion not working (column is called homun_id, not hom_id...)
- Collapsed config settings produce_item_name_input, produce_potion_name_input, making_arrow_name_input, holywater_name_input, cdp_name_input into a single config produce_item_name_input which uses bitmasks to determine what it affects. - Updated arrow_decrement to have 3 possible values: Disabled, Enabled, and Enabled as well as giving arrow requirements to skills that do not have them when used with ranged weapons (auto-guess for plagiarized/item-granted skills) - Minor cleanings git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9746 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 5ac920fe6..8c548b2bc 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -7822,6 +7822,7 @@ static int skill_check_condition_mob_master_sub (struct block_list *bl, va_list
int skill_isammotype (TBL_PC *sd, int skill)
{
return (
+ battle_config.arrow_decrement==2 &&
(sd->status.weapon == W_BOW || (sd->status.weapon >= W_REVOLVER && sd->status.weapon <= W_GRENADE)) &&
skill != HT_PHANTASMIC &&
skill_get_type(skill) == BF_WEAPON &&
@@ -10603,20 +10604,29 @@ int skill_produce_mix (struct map_session_data *sd, int skill_id, int nameid, in
} else {
//Flag is only used on the end, so it can be used here. [Skotlex]
switch (skill_id) {
+ case BS_DAGGER:
+ case BS_SWORD:
+ case BS_TWOHANDSWORD:
+ case BS_AXE:
+ case BS_MACE:
+ case BS_KNUCKLE:
+ case BS_SPEAR:
+ flag = battle_config.produce_item_name_input&0x1;
+ break;
case AM_PHARMACY:
case AM_TWILIGHT1:
case AM_TWILIGHT2:
case AM_TWILIGHT3:
- flag = battle_config.produce_potion_name_input;
+ flag = battle_config.produce_item_name_input&0x2;
break;
case AL_HOLYWATER:
- flag = battle_config.holywater_name_input;
+ flag = battle_config.produce_item_name_input&0x8;
break;
case ASC_CDP:
- flag = battle_config.cdp_name_input;
+ flag = battle_config.produce_item_name_input&0x10;
break;
default:
- flag = battle_config.produce_item_name_input;
+ flag = battle_config.produce_item_name_input&0x80;
break;
}
if (flag) {
@@ -10763,7 +10773,7 @@ int skill_arrow_create (struct map_session_data *sd, int nameid)
tmp_item.identify = 1;
tmp_item.nameid = skill_arrow_db[index].cre_id[i];
tmp_item.amount = skill_arrow_db[index].cre_amount[i];
- if(battle_config.making_arrow_name_input) {
+ if(battle_config.produce_item_name_input&0x4) {
tmp_item.card[0]=CARD0_CREATE;
tmp_item.card[1]=0;
tmp_item.card[2]=GetWord(sd->status.char_id,0); // CharId