#---------------------------------------------------------------------- # 箱庭諸島 ver2.20 # トップモジュール # 使用条件、使用方法等は、hako-readme.txtファイルを参照 # # 箱庭諸島のページ: http://t.pos.to/hako/ #---------------------------------------------------------------------- # 「帝国の興亡」 ver1.0.0 by おじー http://t.pos.to/ozzy/ # 使用条件は箱庭諸島に準ずる.詳しくは付属のreadme.txtファイルを参照 #---------------------------------------------------------------------- package H2; #---------------------------------------------------------------------- # トップページモード #---------------------------------------------------------------------- # メイン sub topPageMain { # 開放 unlock(); # テンプレート出力 tempTopPage(); } # トップページ sub tempTopPage { # タイトル out(< END } my($mStr1) = ''; if($H2::hideMoneyMode != 0) { $mStr1 = "${H2::tagTH_}資金${H2::_tagTH}"; } # 更新時間表示 my($mode, $remainTime, $rtStr); if ($H2::mainMode ne 'turn') { $mode = ($H2::islandTurn < $H2::armisticeTurn) ? '停戦期間' : '戦闘期間'; $remainTime = $H2::unitTime - time() + $H2::islandLastTime; $rtStr = "次回更新($mode)まで、"; $rtStr .= int($remainTime / 3600) . "時間 "; $rtStr .= int(($remainTime % 3600) / 60) . "分 "; $rtStr .= $remainTime % 60 . "秒"; } else { $rtStr = "ターンを更新しました"; } # フォーム out(<${H2::tagHeader_}ターン$H2::islandTurn${H2::_tagHeader} $rtStr

${H2::tagHeader_}自分の島へ${H2::_tagHeader}

あなたの島の名前は?

パスワードをどうぞ!!



${H2::tagHeader_}各陣営の状況${H2::_tagHeader}

END for ($kk = 0; $kk < $H2::campNumber; $kk++) { my($kkk) = $kk+1; my($camp) = $H2::camp[$kk]; my($missileOut) = ($camp->{'ext'}[0] == 0) ? "なし" : "$camp->{'ext'}[0]発"; my($missileIn) = ($camp->{'ext'}[1] == 0) ? "なし" : "$camp->{'ext'}[1]発"; out(< END } out(<

${H2::tagHeader_}諸島の状況${H2::_tagHeader}

島の名前をクリックすると、観光することができます。

${H2::tagTH_}順位${H2::_tagTH} ${H2::tagTH_}陣営${H2::_tagTH} ${H2::tagTH_}マーク${H2::_tagTH} ${H2::tagTH_}島の数${H2::_tagTH} ${H2::tagTH_}合計人口${H2::_tagTH} ${H2::tagTH_}占有率${H2::_tagTH} ${H2::tagTH_}M発射${H2::_tagTH} ${H2::tagTH_}M飛来${H2::_tagTH} ${H2::tagTH_}GNP${H2::_tagTH}
${H2::tagNumber_}$kkk${H2::_tagNumber} $camp->{'name'} $camp->{'mark'} $camp->{'number'}島 $camp->{'score'}$H2::unitPop $camp->{'occupation'}\% $missileOut $missileIn $camp->{'ext'}[2]$H2::unitMoney
$mStr1 END my($island, $j, $farm, $factory, $mountain, $name, $id, $prize, $contribution, $ii, $jj); for($ii = 0; $ii < $H2::islandNumber; $ii++) { $j = $ii + 1; $island = $H2::islands[$ii]; $id = $island->{'id'}; $farm = $island->{'farm'}; $factory = $island->{'factory'}; $mountain = $island->{'mountain'}; $farm = ($farm == 0) ? "保有せず" : "${farm}0$H2::unitPop"; $factory = ($factory == 0) ? "保有せず" : "${factory}0$H2::unitPop"; $mountain = ($mountain == 0) ? "保有せず" : "${mountain}0$H2::unitPop"; $contribution = int($island->{'ext'}[1] / 10); # 貢献度 if($island->{'absent'} == 0) { $name = "${H2::tagName_}$island->{'name'}島${H2::_tagName}"; } else { $name = "${H2::tagName2_}$island->{'name'}島($island->{'absent'})${H2::_tagName2}"; } $prize = $island->{'prize'}; my($flags, $monsters, $turns); $prize =~ /([0-9]*),([0-9]*),(.*)/; $flags = $1; $monsters= $2; $turns = $3; $prize = ''; # ターン杯の表示 while($turns =~ s/([0-9]*),//) { $prize .= "\"$1${H2::prize[0]-{'name'}}\" WIDTH=16 HEIGHT=16> "; } # 名前に賞の文字を追加 my($f) = 1; my($i); for($i = 1; $i < $H2::prizeNumber; $i++) { if($flags & $f) { $prize .= "\"${H2::prize[$i]-{'name'}}\" WIDTH=16 HEIGHT=16> "; } $f *= 2; } # 倒した怪獣リスト $f = 1; my($max) = -1; my($mNameList) = ''; for($i = 0; $i < $H2::monsterNumber; $i++) { if($monsters & $f) { $mNameList .= "[$H2::monsterName[$i]] "; $max = $i; } $f *= 2; } if($max != -1) { $prize .= "\"$mNameList\" "; } my($mStr1) = ''; if($H2::hideMoneyMode == 1) { $mStr1 = ""; } elsif($H2::hideMoneyMode == 2) { my($mTmp) = aboutMoney($island->{'money'}); $mStr1 = ""; } out(< $mStr1 END } out(<

${H2::tagHeader_}新しい島を探す${H2::_tagHeader}

END if($H2::islandNumber < $H2::maxIsland) { out(< END if ($H2::campSelectRule == 2) { out(<
END } out(<
パスワードは?

念のためパスワードをもう一回

END } else { out(<

${H2::tagHeader_}島の名前とパスワードの変更${H2::_tagHeader}

(注意)名前の変更には$H2::costChangeName${H2::unitMoney}かかります。

どの島ですか?

どんな名前に変えますか?(変更する場合のみ)

パスワードは?(必須)

新しいパスワードは?(変更する時のみ)

念のためパスワードをもう一回(変更する時のみ)


${H2::tagHeader_}最近の出来事${H2::_tagHeader}

END logPrintTop(); out(<${H2::tagHeader_}発見の記録${H2::_tagHeader} END historyPrint(); } # トップページ用ログ表示 sub logPrintTop { my($i); for($i = 0; $i < $H2::topLogTurn; $i++) { logFilePrint($i, 0, 0); } } # 記録ファイル表示 sub historyPrint { open(HIN, "${H2::dirName}/hakojima.his"); my(@line, $l); while($l = ) { chomp($l); push(@line, $l); } @line = reverse(@line); foreach $l (@line) { $l =~ /^([0-9]*),(.*)$/; out("${H2::tagNumber_}ターン${1}${H2::_tagNumber}:${2}
\n"); } close(HIN); } 1;
${H2::tagTH_}順位${H2::_tagTH} ${H2::tagTH_}島${H2::_tagTH} ${H2::tagTH_}人口${H2::_tagTH} ${H2::tagTH_}貢献${H2::_tagTH} ${H2::tagTH_}面積${H2::_tagTH}${H2::tagTH_}食料${H2::_tagTH} ${H2::tagTH_}農場規模${H2::_tagTH} ${H2::tagTH_}工場規模${H2::_tagTH} ${H2::tagTH_}採掘場規模${H2::_tagTH}
$island->{'money'}$H2::unitMoney$mTmp${H2::tagNumber_}$j${H2::_tagNumber} $name
$prize
$island->{'pop'}$H2::unitPop $contribution $island->{'area'}$H2::unitArea$island->{'food'}$H2::unitFood $farm $factory $mountain
${H2::tagTH_}コメント:${H2::_tagTH}$island->{'comment'}