あははっは


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

#=========================================================
# デスゾーンの展開
# 毎日昼3時0分0秒~3時0分59秒の間に更新が起きた場合に発生
#=========================================================
$times = time();
($sec,$min,$hour,$mday,$month,$year,$wday,$stime) = localtime($times);

if ($hour == 15 && $min == 0) {
&make_vs_king1;
$npc_com .= "***@デスゾーン@への扉が開いています***";
}
sub make_vs_king1 {
opendir my $dh, $stagedir or &error;
while (my $file_name = readdir $dh) {
next if $file_name =~ /^\./;
next if $file_name !~ /^_king_t/;
my($k_stage) = ($file_name =~ /^(.+)\.cgi$/);

require "$stagedir/$file_name";
my $quest_id = unpack 'H*', $k{p_name};
next if -d "$questdir/$quest_id"; # 同じクエスト名があった場合は作らない(作れない)

$k{p_join}++; # ボスが1人分占有しているため
my $boss_name = '@'.$k{p_leader};

# 新規パーティー作成
mkdir "$questdir/$quest_id" or &error("$questdir/$quest_idディレクトリが作成できません");
open my $fh, "> $questdir/$quest_id/member.cgi" or &error("$questdir/$quest_id/member.cgiファイルが作成できません");
print $fh "$k{speed}<>_king_t_1<>1<>$boss_name<>$k{p_name}<><>$k{p_join}<>0<>0<>1<>$k{need_join}<>6<><>0<>0<><>\n";

my @lines = ();
for my $no (0 .. $#bosses) {
	my %p = ();
	
	# 初期データセット(読み込んだデータにすでに値がある場合はそっちを優先)
	$bosses[$no]{tmp}   ||= '';
	$bosses[$no]{state} ||= '';
	$bosses[$no]{hit}   ||= 95;
	$bosses[$no]{ten}   ||= 1;
	$bosses[$no]{name}  = '@'.$bosses[$no]{name};
	$bosses[$no]{color} = $npc_color;
	for my $k (qw/hp mp at df ag/) {
		$bosses[$no]{$k}       = $bosses[$no]{$k};
		$bosses[$no]{'m'.$k} ||= $bosses[$no]{$k};
	}
	
	my $line = '';
	for my $k (@battle_datas) {
		$line .= defined $bosses[$no]{$k} ? "$bosses[$no]{$k}<>" : "0<>";
	}
	push @lines, "$line\n";
}

print $fh @lines;
close $fh;
chmod $chmod, "$questdir/$quest_id/member.cgi";

open my $fh2, "> $questdir/$quest_id/log.cgi" or &error("$questdir/$quest_id/log.cgiファイルが作成できません");
close $fh2;
chmod $chmod, "$questdir/$quest_id/log.cgi";
}
closedir $dh;
}