cbattle.cgi

「cbattle.cgi」の編集履歴(バックアップ)一覧はこちら

cbattle.cgi」(2010/10/02 (土) 00:47:46) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

<p><font color="#339966">これもとくに説明するところがないところ</font><br /><br /> # Sub Cbattle Display #<br /> sub cbattle_dis {<br />     &amp;form_table('up','100%',1);<br />     &amp;reload;<br /> print &lt;&lt;CBTL;<br /> 港町「$cname」($owname支配下)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align=center&gt;<br /> 「$cname」残HP:$chp pt&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;<br /> &lt;input type=radio name=atktype value="0" checked&gt;<br /> 武力攻撃&lt;br&gt;[戦闘力に応じてダメージ]&lt;br&gt;<br /> &lt;input type=radio name=atktype value="1"&gt;<br /> 破壊工作&lt;br&gt;[$atkfee Gで $cityatked ptのダメージ]&lt;br&gt;<br /> &lt;input type=hidden name=mode value="cbattle_atk"&gt;<br /> CBTL<br />     &amp;id_ps;<br />     &amp;submit_button;<br />     &amp;form_table('down');<br /> }<br /><br /> # Sub Cbattle Attack #<br /> sub cbattle_atk {<br />     &amp;get_me($F{'id'});<br />     if ($action ne $F{'reload'}) { &amp;play; exit }<br />     if ($F{'atktype'} &amp;&amp; $money &lt; $atkfee ) { &amp;play("資金が足りません"); exit }<br />     if (!$F{'atktype'} &amp;&amp; $#ship_ind &lt; 0 ) { &amp;play("船がありません"); exit }<br />     &amp;cb_limit;<br />     require 'csys.cgi';<br />     &amp;get_city;<br />     if ($F{'atktype'}) {<br />         $chp -= $cityatked;<br />         $money -= $atkfee;<br />         if ( $chp &gt; 0 ) { &amp;msg("$cnameに$cityatked ptのダメージを与えました!") }<br />     } else {<br />         my $i_pwr = int($atk + $sailor/10 + rand($b_flac) - ($b_flac / 2) );<br />         if ($i_pwr &lt; 0 ) { $i_pwr = 0 }<br />         my $u_pwr = $citypwr + int( rand($citypwr) - $citypwr/2);<br />         &amp;ship_data;<br />         $i_atked = int(rand($#ship_ind + 1));<br />         $iatked_hp = $ship[$i_atked][2] - $u_pwr;<br />         $chp -= $i_pwr;<br />         if ($iatked_hp &lt;= 0 ) {<br />             &amp;i_lost;<br />             &amp;msg("$ship[$i_atked][4]は撃沈されました!");<br />             &amp;add_record("$cnameに $ship[$i_atked][4]を 撃沈されました!")<br />         } else {<br />             splice(@ship_ind , $i_atked , 1 , "$ship[$i_atked][0],$ship[$i_atked][1],$iatked_hp,$ship[$i_atked][3],$ship[$i_atked][4]");<br />         }<br />         if ( $chp &gt; 0 ) { &amp;msg("$cnameに$i_pwr ptのダメージを与えました!") }<br />     }<br />     $action = '';<br />     if ( $chp &lt;= 0 ) {<br />         require 'event.cgi';<br />         &amp;set_city;<br />         unlink("$citydir/$port\.dat");<br />         &amp;msg("$cnameを壊滅させました!!");<br />         &amp;add_record("$cnameを滅ぼす");<br />         $piracy += 5000;<br />         $trade = int($trade / 2) if $trade &gt; 10000;<br />         $trade -= 5000;<br />         &amp;msg("海賊名声が上がりました!交易名声が大幅ダウン!")<br />         &amp;get_port($area,$port);<br />         &amp;event_write("$nameが$p_nameの$cnameを攻め落としました!");<br />     } else { &amp;set_city }<br />     &amp;play;<br /> }<br /><br /> # Sub City Battle Limit # $battle_line=id,time△id,time△time<br /> sub cb_limit {<br />     my $city_cont = int($cont * 3);<br />     my @battled = split(/△/,$battle_line);<br />     my $last_b = pop(@battled);<br />     my $now = time;<br />     if ( ($now - $last_b)/60 &lt; $city_cont ) { &amp;play("$city_cont分以内に続けて町を攻撃できません"); exit }<br />     $battle_line = join('△' , @battled , $now);<br /> }<br /><br /> # Sub I Lost #<br /> sub i_lost {<br />     &amp;fleet;<br />     $rate = $total ? 1 - ($ship[$i_atked][1] / $total) : 0;<br />     $food = int($food * $rate);<br />     $sailor = int($sailor * $rate);<br />     @my_lt = split(/△/,$load);<br />     foreach (0 .. $#my_lt) {<br />         ($load_name,$load_quan) = split(/,/,$my_lt[$_]);<br />         $load_quan = int($load_quan * $rate);<br />         push(@my_load , "$load_name,$load_quan") if $load_quan != 0;<br />     }<br />     $load = join('△' , @my_load);           <br />     splice(@ship_ind , $i_atked ,1 );<br /> }<br /><br /> 1;</p>

表示オプション

横に並べて表示:
変化行の前後のみ表示:
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。