アイテム関連強化
- 青色は、改造箇所を示します。ファイル名: ルーチン名: 行番号 を示します。
- 黒色文字は、「改造前の状態」を示します。
- テキストボックスの中のプログラムを、該当の場所に上書きして下さい。
アイテム関連強化 Ver 1.03 ★★★☆☆☆☆☆
「アイテムの脱着・使用/廃棄」を楽に実行する改造です。他の方の提供しておられる「アイテムの脱着・使用」改造に、さらに廃棄を追加しています。また同時に、改造箇所が重複する為、アイテムソート機能の強化も同梱しております。※dollEx版ではデフォルトで「アイテムの脱着・使用/廃棄」は対応しており、表示の強化とソート機能の強化の改造となります。
※この 改造を取り入れる際には、併せて 【 改造者表示 】 の改造を取り入れて頂けると嬉しいです。(非強制)
履歴 2007/03/04 Version 1.03 SIONjamサポート掲示板の報告に基づき強奪処理修正 2007/02/18 Wikiにて公開 2003/08/08 Version 1.02 ソート能力強化・手動ソート追加/細部修正 2003/07/24 Version 1.01 細かなバグ修正 2003/07/17 Version 1.00 公開
本家版改造ポイント
◆改造ポイント01 ソートルーチンを追加します。(※ ソートの強化を行わない場合は飛ばして下さい)
sos2.cgi 任意の場所
◆改造ポイント02 ソートルーチンを使用する様に改造します。(※ ソートの強化を行わない場合は飛ばして下さい)
sos2.cgi 任意の場所
◆改造ポイント03 不要コマンド・不要ルーチンを消去します。
sos2.cgi # Sub Normal Action # Line653-655
&input('radio','mode','use_before','',"アイテムの脱着・使用<br>\n") if $mysp =~ /Tf/;
&input('radio','mode','use_before','',"アイテムの使用<br>\n") if $mysp =~ /Tv/;
&input('radio','mode','dump_before','',"アイテムを捨てる<br>\n");
sos2.cgi # Sub Use Before # Line806-825
ルーチンの全て
sos2.cgi # Sub Dump Before # Line985-1003
ルーチンの全て
◆改造ポイント04 分岐ポイントを修正します。
sos2.cgi # Main Program # Line230-235
if ($Fm{'mode'} eq 'dump_before') { &play_form }
if ($Fm{'mode'} eq 'dump_after') { &play_form }
if ($Fm{'mode'} eq 'goods_before') { &action_form }
if ($Fm{'mode'} eq 'goods_after') { &play_form }
if ($Fm{'mode'} eq 'use_before') { &action_form }
if ($Fm{'mode'} eq 'use_after') { &play_form }
※ ソートの強化を行わない場合は、最後の elsifの行 は削除してご利用下さい。
sos2.cgi # Sub Play Form # Line320
&dump_before if $Fm{'mode'} eq 'dump_before';
sos2.cgi # Sub Action Form # Line353
&use_before if $Fm{'mode'} eq 'use_before';
◆改造ポイント05 アイテム使用関連の強化を行います。
sos2.cgi # Sub Player's Data # Line573-578
foreach $item (@items) {
($item,$sts,$price) = split(/△/,$item);
if ($sts =~ /Q[swat]/) { print qq|【$item】<br>\n| }
elsif ($price > 0) { print qq|$item⇒$price\G<br>\n| }
else { print qq|$item<br>\n| }
}
※ 改造法 タイプ1 ※ ソート強化を併せて行う場合
※ 文中に userout があります。getuser2度読み注意!
※ 改造法 タイプ2 ※ ソート強化を行わない場合
◆改造ポイント06 アイテム使用関連の強化に併せて一部を修正します。
sos2.cgi # Sub Use After # Line831-832
return if $fg ne 'UB';
&splititem('i');
sos2.cgi # Sub Dump After # Line1009-1010
return if $fg ne 'DB';
&splititem('i');
◆改造ポイント07 パートナー表示の強化(レアアイテム赤字表示)。
sos2.cgi # Sub Partner's Data # Line622-624
if ($sts =~ /Q[swat]/) { print qq|【$item】<br>\n| }
elsif ($price > 0) { print qq|$item⇒$price\G<br>\n| }
else { print qq|$item<br>\n| }
◆改造ポイント08 戦闘の際の強奪処理を修正します
sos2.cgi # Sub Fight #
&joinitem('iI'); &fmsg('奪');
dollEx版改造ポイント
◆改造ポイント01 ソートルーチンを追加します。(※ ソートの強化を行わない場合は飛ばして下さい)
perl/subsos.cgi 任意の場所
◆改造ポイント02 ソートルーチンを使用する様に改造します。(※ ソートの強化を行わない場合は飛ばして下さい)
perl/subsos.cgi # Sub Join Item # Line49-52
@items = sort(@items) if $_[0] =~ /i/ && $def_so;
$bg = join(',',@items) if $_[0] =~ /i/;
@pitems = sort(@pitems) if $_[0] =~ /I/ && $def_so;
$pbg = join(',',@pitems) if $_[0] =~ /I/;
◆改造ポイント03 不要コマンド・不要ルーチンを消去します。
別改造:dollEx軽量化として掲載予定です。
◆改造ポイント04 分岐ポイントを修正します。(※ ソートの強化を行わない場合は飛ばして下さい)
sos2.cgi # Main Program # Line90
&unlock;
◆改造ポイント05 アイテム使用関連の強化を行います。
perl/players.cgi # Sub Player's Data # Line30-49
&form('start');
&splititem('i');
my($mn) = $#items + 1;
print qq|<td valign=top>アイテム$mn/MAX$xi<br>\n|;
if ( $sp =~ /Tf/ ) { &input('radio','mode','use_after',' checked','着脱・使用<br>');
}
else { &input('radio','mode','use_after',' checked','使用<br>');
}
&input('radio','mode','dump_after','','捨てる<br><br>');
foreach (0 .. $#items) {
($item,$sts,$price) = split(/△/,$items[$_]);
if ($sts =~ /Q[swat]/) { &input('checkbox',"$_",'on',' checked',"【$item】<br>\n")
}
elsif ($price > 0) { &input('checkbox',"$_",'on','',"$item⇒$price\G<br>\n")
}
else { &input('checkbox',"$_",'on','',"$item <br>\n") }
}
print qq|なし<br>\n| if !$bg;
&input('hidden','icount',"$#items",'','');
print qq|<hr>\n|;
&input('checkbox','sort','on','','並び替える');
&OKbuttoninform('n');
print qq|</td></tr>\n|;
&form('end');
※ 改造法 タイプ1 ※ ソート強化を併せて行う場合
※ 改造法 タイプ2 ※ ソート強化を行わない場合
◆改造ポイント06 アイテム使用関連の強化に併せて一部を修正します。
perl/motion.cgi # Sub Dump After # Line27
&splititem('i');
◆改造ポイント07 パートナー表示の強化(レアアイテム赤字表示)。
perl/players.cgi # Sub Partner's Data # Line104-106
if ($sts =~ /Q[swat]/) { print qq|【$item】<br>\n| }
elsif ($price > 0) { print qq|$item⇒$price\G<br>\n| }
else { print qq|$item<br>\n| }