#!/usr/local/bin/perl

# 地図
# ver 1.021
# 2001/9/13
# 那司

$title = 'よくわからないバトルロワイアル';
$ct=8; # == 次回禁止エリアの個数
$ct--;

require './jcode.pl';
require './btlrylcm.cgi';
&Gettime(time);
&Header;
&Readone;
&Map;
print <<END;
<hr><p class=head align=right>
<i>よくわからない BATTLE ROYALE Script by <a href="http://www.coara.or.jp/~wakaran/">zibun</a><br>
地図 by <a href="http://www2.to/yu-sin/">那司</a></i>
</p></body></html>
END
exit;

# -----------ステータス読み込み
# 0:名前 1:Password 2:生命力 3:所在地 4:空腹度 5:最終行動時間 6:殺害数 7:反応 8:リモホ 9~16:Item(使用回数,種類)
sub Readone {
my($i,$j,$danger,@status0);
$j = $num = 0;

open (LOCK,">$filelock");
eval {flock(LOCK,2)};
open (STAT,"$filestat") || &Error(1,'ステータス');
$danger = <STAT>;
chomp $danger;
while(<STAT>){
chomp;
$i++;
@status0 = split(/\,/);
	if($status0[2] > 0 && (time - $status0[4]) < $starvtime){
	$pos[$i] = $status0[3];
	$pos[$i] += 1000 if($status0[5] =~ m/<>/);
	} # 位置
	if($FM{'victim'} == $i){$guestnum = $i;@guest = @status0;} # 相手
	if($status0[0] eq $FM{'name'} && $status0[1] eq $FM{'password'}){@status = @status0;$num = $i;}
}
close(STAT);

	# 禁止エリア
@status0 = split(/\:/,$danger);
@dangers = split(/\,/,$status0[0]);
@dangerz = split(/\,/,$status0[1]);
($lastone,$lasttime) = split(/\,/,$status0[2]);
$dangertime = shift @dangers;
$num = $j if $j;
$location = substr($island,int($status[3] / 10) - 1,1);

}

#地図
sub Map {
my($i,$j,$k,$l,$m,$place,$number,@display);

print <<END;
<h2 align=center>現在の地図</h2>
<table border=1 cellspacing=0 cellpadding=3 class=stat align=center>
<tr><td align=center class=map nowrap>
<table border=0 cellpadding=0 cellspacing=0 class=map2><tr>
END

foreach(0..10){print '<td>'.substr('  １２３４５６７８９10',$_*2,2).'</td>';}
print '</tr>';

$i = substr($status[3],0,2);
$way = $status[3] % 10;
for($j=0;$j<10;$j++){
print '<tr><td>'.substr('ABCDEFGHIJ',$j,1).'</td>';
	for($k=0;$k<10;$k++){
	$l = $j * 10 + $k;
	$m = substr($island,$l,1);
	$l++;
	if(grep $l == $_, @dangers){print '<td class=kinsi>□';} # 禁止エリア
	elsif(grep $l == $dangerz[$_], (0..$ct)){ # 次の禁止エリア
          if($m == 0){print '<td class=sea>△'} # 海域
          elsif($m == 1){print '<td class=plane>▲'} # 平地
          elsif($m == 2){print '<td class=road>▲'} # 道路
          elsif($m == 3){print '<td class=forest>▲'} # 森
          elsif($m == 4){print '<td class=mountain>▲'} # 山
	  else {print '<td>△';} # なんか知らんとき
        }
	elsif($m >= 0 && $m <= 4){$m = ('<td class=sea>□','<td class=plane>■','<td class=road>■','<td class=forest>■','<td class=mountain>■')[$m];print $m;} # 0:海 1:平地 2:道路 3:森 4:山
	else {print '<td>□';} # その他
	print '</td>';
	}
print "</tr>\n";
}

print <<END;
</td></tr></table>
<!--
http://www2.to/yu-sin/
-->
</td></tr></table>
END
print '<p align=right>現在時間：'.&Gettime(time,1).
'<br>次回禁止エリア発動：'.&Gettime($dangertime,1).'<p>';

}

# -------標準出力
sub Out {print STDOUT "<p class=result>$_[0]</p>\n";}
