diff options
author | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-12-07 08:16:25 +0000 |
---|---|---|
committer | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-12-07 08:16:25 +0000 |
commit | ee93ce7a37a5ea542ecc5ec32bc8a9499b75a739 (patch) | |
tree | 40ab56e3843177e6b83e651b80c89d2b7915c4b0 /src/map/skill.c | |
parent | 1df4d8745da1cfdfa7d2dd24632074fab5234a6b (diff) | |
download | hercules-ee93ce7a37a5ea542ecc5ec32bc8a9499b75a739.tar.gz hercules-ee93ce7a37a5ea542ecc5ec32bc8a9499b75a739.tar.bz2 hercules-ee93ce7a37a5ea542ecc5ec32bc8a9499b75a739.tar.xz hercules-ee93ce7a37a5ea542ecc5ec32bc8a9499b75a739.zip |
- Shooting skills will now need arrows
* Added 'guildgetexp' script command
* Added bLongAtkRate item effect
* Updated Bow Thimble, Archer Skeleton Card, Tribal Solidarity, Sleipnir, Brisingamen, Mjolnir, Megingord, Counter Dagger, Poison Knife
* Updated SP requirements for Full Strip, Full Chemical Protection, Cannibalize
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@485 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index ba8991e52..77b5b7516 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -6843,6 +6843,7 @@ int skill_check_condition(struct map_session_data *sd,int type) { int i,hp,sp,hp_rate,sp_rate,zeny,weapon,state,spiritball,skill,lv,mhp; int index[10],itemid[10],amount[10]; + int arrow_flag = 0; nullpo_retr(0, sd); @@ -7059,6 +7060,20 @@ int skill_check_condition(struct map_session_data *sd,int type) } } break; + // skills require arrows as of 12/07 [celest] + case AC_DOUBLE: + case AC_SHOWER: + case AC_CHARGEARROW: + case BA_MUSICALSTRIKE: + case DC_THROWARROW: + case SN_SHARPSHOOTING: + case CG_ARROWVULCAN: + if(sd->equip_index[10] <= 0) { + clif_arrow_fail(sd,0); + return 0; + } + arrow_flag = 1; + break; } if(!(type&2)){ @@ -7196,6 +7211,8 @@ int skill_check_condition(struct map_session_data *sd,int type) if(index[i] >= 0) pc_delitem(sd,index[i],amount[i],0); // アイテム消費 } + if (arrow_flag && battle_config.arrow_decrement) + pc_delitem(sd,sd->equip_index[10],1,0); } if(type&2) |