トップ 一覧 検索 ヘルプ RSS ログイン

SION0018の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!Parts1
<TABLE width="778" border="0" cellspacing="0" cellpadding="5">
	<TR bgcolor="#CCCCFF"> 
		<TD class="text"> 
			<HR>
			<FONT face="MS ゴシック, Osaka−等幅" class="text"> </FONT> この改造は、「質屋には無条件で会える」事を前提としています。<BR>
			この改造の利用により、(質屋キャラの)保存方法に関わらず、質屋と同じエリアに居れば100%アイテムを売りつける事が可能となります。 
			<HR>
		</TD>
	</TR>
</TABLE>

!Parts2
<BR>
<FONT color="#0000FF"><B>sos2.cgi # Sub Player's Data # Line580以降 (本家original) 	</b></FONT><BR>
<FONT color="#FF0000"><B><FONT color="#0000FF">perl/players.cgi 	# Sub Player's Data # Line52以降 (dollEx)</B></FONT><BR>
※ 改造法 タイプA ※ 1エリアに質屋が1人前提(軽量版)</B></FONT><BR>
<b>if (@items) { </b><BR>
<TEXTAREA name="textarea2" cols="100" rows="5" wrap="OFF">
#-ADD-
	foreach $line (@lstlines) {
		($pbid,$pbnm,$pbps,$pbjb,$pbig,$pbsp,$pbbp,$pbbn,$pbak,$pbdd,$pbhp,$pbxp,
		$pbab,$pbdb,$pbav,$pbwn,$pblz,$pbdt,$pbmn,$pbbg,$pbxi,$pbtm,$pblf,$pbfe,
		$pbcm,$pbis,$pbht,$pbfg,$pbrw,$pbkl) = split(/&lt;&gt;/,$line);
		if ($tw eq $pbtw &amp;&amp; $area eq $pbaa &amp;&amp; $pbsp =~ /Pb/ &amp;&amp; ($pbsp =~ /Bf/ &amp;&amp; $sp !~ /Pb/ || $pbsp =~ /Bm/ &amp;&amp; $sp !~ /Tf/)) {
			$pb_sell = $pbid; last;
	}	}
#-END of ADD- SION0018v1.02-1-1(1)/3
	if (@items) {
</TEXTAREA><BR>
※ split(/&lt;&gt;/,$line); 部分は書き換えてご利用下さい。<BR><BR>
<b>print qq|&lt;/SELECT&gt;&lt;HR&gt;\n|;</b><BR>
<TEXTAREA name="textarea2" cols="100" rows="5" wrap="OFF">
#-EDIT-		print qq|&lt;/SELECT&gt;&lt;HR&gt;\n|;
		print qq|&lt;OPTION value=&quot;sell_after_pb&quot;&gt;$pbnm に売る\n| if ($pb_sell);
		print qq|&lt;/SELECT&gt;&lt;HR&gt;\n|;
		&amp;input('hidden','pd',&quot;$pb_sell&quot;,'','');
#-END of EDIT- SION0018v1.02-1-1(2)/3
</TEXTAREA><BR><BR><BR>
<FONT color="#FF0000"><B>※ 改造法 タイプB ※ 1エリアに質屋が複数いる場合(重量版)</B></FONT><BR>
<b>print qq|&lt;/SELECT&gt;&lt;HR&gt;\n|;</b><BR>
<TEXTAREA name="textarea" cols="100" rows="5" wrap="OFF">
#-ADD-
		foreach $line (@lstlines) {
			($pbid,$pbnm,$pbps,$pbjb,$pbig,$pbsp,$pbbp,$pbbn,$pbak,$pbdd,$pbhp,$pbxp,
			$pbab,$pbdb,$pbav,$pbwn,$pblz,$pbdt,$pbmn,$pbbg,$pbxi,$pbtm,$pblf,$pbfe,
			$pbcm,$pbis,$pbht,$pbfg,$pbrw,$pbkl) = split(/&lt;&gt;/,$line);
			if ($tw eq $pbtw &amp;&amp; $area eq $pbaa &amp;&amp; $pbsp =~ /Pb/ &amp;&amp; ($pbsp =~ /Bf/ &amp;&amp; $sp !~ /Pb/ || $pbsp =~ /Bm/ &amp;&amp; $sp !~ /Tf/)) {
				print qq|&lt;OPTION value=&quot;sell_after_pb$pbid&quot;&gt;$pbnm に売る\n|;
			}
		}
#-END of ADD- SION0018v1.02-1-1/3
print qq|&lt;/SELECT&gt;&lt;HR&gt;\n|;
</TEXTAREA><br>
<FONT color="#FF0000">※ split(/&lt;&gt;/,$line); 部分は書き換えてご利用下さい。 </FONT> 

!Parts3
<BR>
<B><FONT color="#0000FF">sos2.cgi # Sub Sell After # Line1125-1159 	(本家original)</FONT></B><BR>
<B><FONT color="#0000FF">perl/bisiness.cgi # Sub Sell After # Line72-105 (dollEx)</FONT></B><BR>
sub sell_after のルーチンを置き換える<BR>
<B><FONT color="#FF0000"><B>※ 改造法 タイプA ※ 1エリアに質屋が1人前提(軽量版)</B></FONT><BR>
<TEXTAREA name="textarea3" cols="100" rows="5" wrap="OFF">
#=======《 Sell After 》=================================================#
sub sell_after {
	if (!$post) { return }
	@rcdlines = &amp;get_user(&quot;$Fm{'id'}&quot;);
	if ($Fm{'mode'} =~ /pb/) { push (@editor,&quot;質屋に売る Ver 1.00 &lt;A href='http://www.salion2.halfmoon.jp/soswiki/wiki.cgi' target='_blank'&gt;by SION & SOSWiki&lt;/A&gt;&quot;); }
	else { return if $fg ne 'SB'; }
	@prclines = &amp;get_partner(&quot;$Fm{'pd'}&quot;);
	&amp;splititem('iI');
	$space = $pxi - $#pitems - 1;
	foreach (0 .. $#items) {
		($item,$sts,$price) = split(/△/,$items[$_]);
		$returnbag = 1;
		$pc = int(substr($sts,0,4));
		if ($Fm{&quot;$_&quot;} &amp;&amp; $sts !~ /Q[swat]/) {
			if    ($sts =~ /Wi/)                        { push(@msg,&quot;$itemは売れません&quot;); }
			elsif ($sts =~ /(V[a-z])/ &amp;&amp; $psp =~ /$1/)  { push(@msg,&quot;$itemは売れません&quot;); }
			elsif ($pmn &lt; $pc)                          { push(@msg,&quot;$pnmは$itemを買うお金がありません&quot;); }
			elsif (!$space &amp;&amp; $sts !~ /Ti/ &amp;&amp; !$def_ad) { push(@msg,&quot;$pnmは$itemを買う気がないようです&quot;); }
			else {
				$pmn -= $pc; $mn += $pc;
				push (@msg,&quot;$itemを売りました&quot;);
				$words .= &quot;$itemを$pc\Gで買い取りました。&quot;;
				if ($sts =~ /Ti/) { $space++ }
				elsif ($def_ap || $def_as) {
					$pc += $def_as if $def_as;
					$pc += int($def_ap * $pc / 100) if $def_ap;
					push(@pitems,&quot;$item△$sts△$pc&quot;); }
				else { push(@pitems,&quot;$item△$sts&quot;) }
				$returnbag = 0; $space--;
				shift(@pitems) if $def_ad &amp;&amp; $#pitems &gt;= $pxi;
		}	}
		if ($returnbag) { push(@newitems,$items[$_]); }
	}
	@items = @newitems; &amp;joinitem('iI');
	$fg = ''; &amp;userout; &amp;add_record(&quot;[$id] $nmから $words&quot;);
}
</TEXTAREA><br>
※ dollEx版では、Ver1.10にするか、if (!$post).. の部分を削除して下さい。 <br><BR><BR>
<FONT color="#FF0000"><B>※ 改造法 タイプB ※ 1エリアに質屋が複数いる場合(重量版)</B></FONT><BR>
<TEXTAREA name="textarea3" cols="100" rows="5" wrap="OFF">
#=======《 Sell After 》=================================================#
sub sell_after {
	if (!$post) { return }
	@rcdlines = &amp;get_user(&quot;$Fm{'id'}&quot;);
	if ($Fm{'mode'} =~ /pb/) {
		push (@editor,&quot;質屋に売る Ver 1.00 &lt;A href='http://www.salion2.halfmoon.jp/soswiki/wiki.cgi' target='_blank'&gt;by SION & SOSWiki&lt;/A&gt;&quot;);
		$Fm{'pd'} = substr($Fm{'mode'},13);
	} else { return if $fg ne 'SB'; }
	@prclines = &amp;get_partner(&quot;$Fm{'pd'}&quot;);
	&amp;splititem('iI');
	$space = $pxi - $#pitems - 1;
	foreach (0 .. $#items) {
		($item,$sts,$price) = split(/△/,$items[$_]);
		$returnbag = 1;
		$pc = int(substr($sts,0,4));
		if ($Fm{&quot;$_&quot;} &amp;&amp; $sts !~ /Q[swat]/) {
			if    ($sts =~ /Wi/)                        { push (@msg,&quot;$itemは売れません&quot;); }
			elsif ($sts =~ /(V[a-z])/ &amp;&amp; $psp =~ /$1/)  { push (@msg,&quot;$itemは売れません&quot;); }
			elsif ($pmn &lt; $pc)                          { push (@msg,&quot;$pnmは$itemを買うお金がありません&quot;); }
			elsif (!$space &amp;&amp; $sts !~ /Ti/ &amp;&amp; !$def_ad) { push (@msg,&quot;$pnmは$itemを買う気がないようです&quot;); }
			else {
				$pmn -= $pc; $mn += $pc;
				push (@msg,&quot;$itemを売りました&quot;);
				$words .= &quot;$itemを$pc\Gで買い取りました。&quot;;
				if ($sts =~ /Ti/) { $space++ }
				elsif ($def_ap || $def_as) {
					$pc += $def_as if $def_as;
					$pc += int($def_ap * $pc / 100) if $def_ap;
					push(@pitems,&quot;$item△$sts△$pc&quot;); }
				else { push(@pitems,&quot;$item△$sts&quot;) }
				$returnbag = 0; $space--;
				shift(@pitems) if $def_ad &amp;&amp; $#pitems &gt;= $pxi;
		}	}
		if ($returnbag) { push(@newitems,$items[$_]); }
	}
	@items = @newitems; &amp;joinitem('iI');
	$fg = ''; &amp;userout; &amp;add_record(&quot;[$id] $nmから $words&quot;);
}
</TEXTAREA><BR>
※ dollEx版では、Ver1.10にするか、if (!$post).. の部分を削除して下さい。 

!Parts4
<BR>
<B><FONT color="#0000FF">sos2.cgi # Main Program # Line229</FONT></B><BR>
<b>if ($Fm{'mode'} eq 'find_item') { &play_form } </B><BR>
<TEXTAREA name="textarea6" cols="100" rows="4" wrap="OFF">
if ($Fm{'mode'} eq 'find_item')	{ &amp;play_form	}
#-ADD-
elsif ($Fm{'mode'} =~ /sell_after_pb/)   { &amp;play_form }
#-END of ADD- SION0018v1.02-3-2/3
</TEXTAREA><BR><BR><BR>
<B><FONT color="#0000FF">sos2.cgi # Sub Play Form # Line302</FONT></B><BR>
<b>&use_after if $Fm{'mode'} eq 'use_after'; </b><BR>
<TEXTAREA name="textarea4" cols="100" rows="4" wrap="OFF">
	&amp;use_after   if $Fm{'mode'} eq 'use_after';
#-ADD-
	if ($Fm{'mode'} =~ /sell_after_pb/)   { &amp;sell_after }
#-END of ADD- SION0018v1.02-3-3/3
</TEXTAREA>

!Parts5
<BR>
<B><FONT color="#0000FF">sos2.cgi # Main Program # Line36</FONT></B><BR>
<b>elsif ($Fm{'mode'} eq 'find_item') { require $formpl; &play_form } </B><BR>
<TEXTAREA name="textarea7" cols="100" rows="4" wrap="OFF">
elsif ($Fm{'mode'} eq 'find_item') { require $formpl; &play_form }
#-ADD-
elsif ($Fm{'mode'} =~ /sell_after_pb/)   { require $formpl; &amp;play_form }
#-END of ADD- SION0018v1.02-3-3/2
</TEXTAREA><BR><BR><BR>
<B><FONT color="#0000FF">perl/form.cgi # 	Sub Play Form # Line28</FONT></B><BR>
<b>elsif ( $Fm{'mode'} eq 'use_after' ) { require $usepl; &use_after } </b><BR>
<TEXTAREA name="textarea7" cols="100" rows="4" wrap="OFF">
	elsif ( $Fm{'mode'} eq 'use_after' ) { require $usepl; &use_after }
#-ADD-
	elsif ($Fm{'mode'} =~ /sell_after_pb/) { require $bisinesspl; &amp;sell_after }
#-END of ADD- SION0018v1.02-3-3/3
</TEXTAREA>