!!!{{category SOS2改造}}装備関連強化 {{font color=red,注意!}}  バグはちゃっちゃと報告しましょう、ご利用は計画的に:) !!概要 装備関連の強化です。 スキル「二刀流」、スキル「限定解除二刀流」、「呪われたアイテム」の概念を追加できます。 :二刀流: 片手武器を両手に装備可能になります、メジャーなスキルのリプライズです。 :限定解除二刀流: 二刀流の強化スキル、両手武器を二刀流できます。 :呪われたアイテム: 装備すると外せなくなります:p *解呪の方法はご自分で工夫します、導入する際はご注意ください。 !!改造 !1. スキルと略字の設定をします ,表記,説明 ,○○,二刀流のスキル ,××,限定解除二刀流のスキル ,□□,呪われたアイテムの略字 ,△△,呪われたアイテムが装備された状態と判断するための略字 !2. # Sub Use After # の修正 呪われたアイテムが装備が解除できないようにします。 foreach (0 .. $#items) { ($item,$sts,$price) = split(/△/,$items[$_]); $iak = substr($sts,4,2); $idd = substr($sts,6,2); if ($sts =~ /Q[swat]/) { $nomsg = 1 } else { $nomsg = 0 } $sts =~ s/Q[swat]//g; if ($Fm{$_}) { に4行追加します↓ foreach (0 .. $#items) { ($item,$sts,$price) = split(/△/,$items[$_]); $iak = substr($sts,4,2); $idd = substr($sts,6,2); if ($sts =~ /Q[swat]/) { $nomsg = 1 } else { $nomsg = 0 } $sts =~ s/Q[swat]//g; ## ここから $curse = 0; if ($sts =~ /(△△)/) { &umsg('不') if !$Fm{$_}; $sts =~ s/$1//g; $Fm{$_} = 'on'; $curse = 1; } ## ここまで if ($Fm{$_}) { !3. # Sub Use Message # の修正 メッセージを2つ追加します。 '呪',"おおっと! $itemは呪われていました", '不',"$itemは呪われているため外せません", !4. # Sub Arm # の修正 すこし大掛かりです。 STEP1. if ($sts =~ /Dh/ && $sp !~ /Oh/) { if ($ch !~ /Q[sw]/) { $ab += $iak; $db += $idd; &umsg('装') if !$nomsg; if ($a1 eq 'Bw') { $sp .= 'Qb' } if ($a1 eq 'Kt') { $sp .= 'Qk' } if ($a1 eq 'Ax') { $sp .= 'Qx' } if ($a1 eq 'Sw' && $sts =~ /Li/) { $sp .= 'Qm' } $ch .= 'QwQs'; $sts .= 'QwQs'; } else { &umsg('両') } に追記、条件分岐を足します↓ if ($sts =~ /Dh/ && $sp !~ /Oh/) { if ($ch !~ /Q[sw]/) { $ab += $iak; $db += $idd; &umsg('装') if !$nomsg; if ($a1 eq 'Bw') { $sp .= 'Qb' } if ($a1 eq 'Kt') { $sp .= 'Qk' } if ($a1 eq 'Ax') { $sp .= 'Qx' } if ($a1 eq 'Sw' && $sts =~ /Li/) { $sp .= 'Qm' } $ch .= 'QwQs'; $sts .= 'QwQs'; ## 追記 if ($sts =~ /□□/) { $sts .= '△△'; &umsg('呪') if !$curse } ## ここから } elsif ($ch !~ /××/ && $sp =~ /××/) { $ab += $iak; $db += $idd; &umsg('装') if !$nomsg; if ($a1 eq 'Bw') { $sp .= 'Qb' } if ($a1 eq 'Kt') { $sp .= 'Qk' } if ($a1 eq 'Ax') { $sp .= 'Qx' } if ($a1 eq 'Sw' && $sts =~ /Li/) { $sp .= 'Qm' } $ch .= 'QwQs' . '××'; $sts .= 'QwQs'; if ($sts =~ /□□/) { $sts .= '□□'; &umsg('呪') if !$curse } ## ここまで } else { &umsg('両') } STEP2. } elsif ($ch !~ /$a2/) { $ab += $iak; $db += $idd; &umsg('装') if !$nomsg; if ($a1 eq 'Bw') { $sp .= 'Qb' } if ($a1 eq 'Kt') { $sp .= 'Qk' } if ($a1 eq 'Ax') { $sp .= 'Qx' } if ($a1 eq 'Sw' && $sts =~ /Li/) { $sp .= 'Qm' } $ch .= $a2; $sts .= $a2; } else { &umsg('別') } に追記、条件分岐を足します↓ } elsif ($ch !~ /$a2/) { $ab += $iak; $db += $idd; &umsg('装') if !$nomsg; if ($a1 eq 'Bw') { $sp .= 'Qb' } if ($a1 eq 'Kt') { $sp .= 'Qk' } if ($a1 eq 'Ax') { $sp .= 'Qx' } if ($a1 eq 'Sw' && $sts =~ /Li/) { $sp .= 'Qm' } $ch .= $a2; $sts .= $a2; ## 追記 $ch .= '××' if $a1 =~ /Sh|Ys/; ## 追記 if ($sts =~ /□□/) { $sts .= '△△'; &umsg('呪') if !$curse } ## ここから } elsif ($ch !~ /Qs/ && $sp =~ /○○/ || $ch !~ /××/ && $sp =~ /××/) { $ab += $iak; $db += $idd; &umsg('装') if !$nomsg; if ($a1 eq 'Bw') { $sp .= 'Qb' } if ($a1 eq 'Kt') { $sp .= 'Qk' } if ($a1 eq 'Ax') { $sp .= 'Qx' } if ($a1 eq 'Sw' && $sts =~ /Li/) { $sp .= 'Qm' } $ch .= "$a2" . 'Qs' . '××'; $sts .= $a2; if ($sts =~ /□□/) { $sts .= '△△'; &umsg('呪') if !$curse } ## ここまで } else { &umsg('別') } 以上で修正完了です。