diff options
author | Fate <fate-tmw@googlemail.com> | 2009-09-27 15:32:58 +0000 |
---|---|---|
committer | Fate <fate-tmw@googlemail.com> | 2009-09-27 15:32:58 +0000 |
commit | bf27f14214997e97aad2a80b24885b8f9af30e0a (patch) | |
tree | 54181661f30141f3b0218d9383a5de9327524a91 /src/map/pc.c | |
parent | 02ce702acb0fadcaf76470a94194f1d20e4c8bc0 (diff) | |
download | tmwa-bf27f14214997e97aad2a80b24885b8f9af30e0a.tar.gz tmwa-bf27f14214997e97aad2a80b24885b8f9af30e0a.tar.bz2 tmwa-bf27f14214997e97aad2a80b24885b8f9af30e0a.tar.xz tmwa-bf27f14214997e97aad2a80b24885b8f9af30e0a.zip |
Added "Mallard's Eye" skill (45) for ranged weapon users: increase
to-hit, increase range, decrease the malus effect of distance.
Also added an up to 31.25% damage bonus for hitting enemies that
are farther away (only affects ranged weapons).
Fixed a bug that would forget to recompute stats after changing
skill focus.
Diffstat (limited to 'src/map/pc.c')
-rw-r--r-- | src/map/pc.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 5976137..e2f8eec 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -1431,9 +1431,6 @@ int pc_calcstatus(struct map_session_data* sd,int first) if( (skill=pc_checkskill(sd,MC_INCCARRY))>0 ) // skill can be used with an item now, thanks to orn [Valaris] sd->max_weight += skill*1000; - if( (skill=pc_checkskill(sd,AC_OWL))>0 ) // �ӂ��낤�̖� - sd->paramb[4] += skill; - // �X�e�[�^�X�ω��ɂ������{�p�����[�^� if(sd->sc_count){ if(sd->sc_data[SC_CONCENTRATE].timer!=-1 && sd->sc_data[SC_QUAGMIRE].timer == -1){ // �W���͌��� @@ -1568,10 +1565,15 @@ int pc_calcstatus(struct map_session_data* sd,int first) if( (skill=pc_checkskill(sd,AC_VULTURE))>0){ // ���V�̖� sd->hit += skill; - if(sd->status.weapon == 11) + if (sd->status.weapon == 11) sd->attackrange += skill; } + if (sd->attackrange > 2) { // [fate] ranged weapon? + sd->attackrange += MIN(skill_power(sd, AC_OWL) / 60, 3); + sd->hit += skill_power(sd, AC_OWL) / 10; // 20 for 200 + } + if( (skill=pc_checkskill(sd,BS_WEAPONRESEARCH))>0) // ���팤���̖��������� sd->hit += skill*2; if(sd->status.option&2 && (skill = pc_checkskill(sd,RG_TUNNELDRIVE))>0 ) // �g���l���h���C�u // �g���l���h���C�u |