📄 admin.cgi
字号:
$datames .= "$dir/$fileがみつかりません。<br>\n";
}
@page = <page>;
close(page);
$list[$i]="$file";
($eid,$epass,$ename,$eurl,$echara,$esex,$ehp,$emaxhp,$emp,$emaxmp,$eele,$estr,$evit,$eint,$emen,$eagi,$ecom,$egold,$e_ex,$ecex,$eunit,$econ,$earm,$epro,$eacc,$esub1,$esub2,$etac,$esta,$epos,$emes,$ehost,$edate,$esyo,$eclass,$etotal,$ekati) = split(/<>/,$page[0]);
if($edate < $tt){
$dir2="./charalog/main";
unlink("$dir2/$eid\.cgi");
$dir2="./charalog/bank";
unlink("$dir2/$eid\.cgi");
$dir2="./charalog/arm";
unlink("$dir2/$eid\.cgi");
$dir2="./charalog/item";
unlink("$dir2/$eid\.cgi");
$dir2="./charalog/chara_max";
unlink("$dir2/$eid\.cgi");
$dir2="./charalog/map";
unlink("$dir2/$eid\.cgi");
$i++;
}
}
}
closedir(dirlist);
&HOST_NAME;
&TIME_DATA;
unshift(@S_MOVE,"<font color=red><B>\[削除\]</B></font> 34日以降ログインのない方を削除しました。($mday日$hour時$min分)<BR>\n");
splice(@S_MOVE,20);
open(OUT,">$MAP_LOG_LIST") or &ERR2('LOG 新しいデータを書き込めません。');
print OUT @S_MOVE;
close(OUT);
&HEADER;
print <<"EOM";
<center><h2><font color=red>34日以降ログインのない方(<font color=red>$i名</font>)を削除しました。</font></h2><hr size=0>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='戻る'>
<br></form>
EOM
&FOOTER;
exit;
}
#_/_/_/_/_/_/_/_/_/#
#_/ WRITE画面 _/#
#_/_/_/_/_/_/_/_/_/#
sub BBS {
&TIME_DATA;
if($in{'id'} ne "$adminid" || $in{'pass'} ne "$adminpass"){
&ERR2("ID、パスワードエラー $num ");}
open(IN,"$ADMIN_BBS");
@AD_DATA = <IN>;
close(IN);
if($in{'message'} eq "") { &ERR2("メッセージが記入されていません。"); }
$bbs_num = @AD_DATA;
if($bbs_num > 40) { pop(@AD_DATA); }
unshift(@AD_DATA,"<font color=red>$in{'message'}</font> $in{'name'}より($mday日$hour時$min分)<BR><hr size=0>\n");
open(OUT,">$ADMIN_BBS");
print OUT @AD_DATA;
close(OUT);
&HEADER;
print <<"EOM";
<h2>書き込みました。</h2>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
</select><input type=submit value='戻る'>
<br></form>
EOM
&FOOTER;
exit;
}
#_/_/_/_/_/_/_/_/_/#
#_/ MENTE2画面 _/#
#_/_/_/_/_/_/_/_/_/#
sub MENTE2 {
if($in{'id'} ne "$adminid" || $in{'pass'} ne "$adminpass"){
&ERR2("ID、パスワードエラー $num ");}
open(IN,"$CHARA_DATA_LIST");
@CL_DATA = <IN>;
close(IN);
foreach(@CL_DATA) {
($eid,$epass,$ename,$echara,$estr,$eint,$elea,$echa,$esol,$egat,$econ,$egold,$erice,$ecex,$eclass,$earm,$ebook,$ebank,$esub1,$esub2,$epos,$emes,$ehost,$edate,$email,$eos) = split(/<>/);
$human_data[$i]="$ehost<>$ename<>$eid<>";
push(@newlist,"@page<br>");
$i++;
}
@human_data = sort @human_data;
&HEADER;
print <<"EOM";
<h2>キャラ管理ツール</h2>
<br>
IDはファイル名と同じになっているので変更しないで下さい。<br>
削除をする時は闘技場、天真に登録していないかを確認してから削除して下さい。<br>
ホスト名は随時更新しています。<br>
<form method="post" action="admin.cgi">
<input type=hidden name=mode value=CHANGE>編集するファイル:
<select name=fileno>
EOM
$i=0;$w_host="";
foreach(@human_data){
($ehost,$ename,$eid) = split(/<>/);
print "<option value=$eid\.cgi>$ename ($eid) $ehost\n";
if($w_host eq "$ehost"){
$mess .= "$ename<BR>\n";
}
$w_host = "$ehost";
$i++;
}
print <<"EOM";
</select><input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='編集'>
<br></form>
2重登録疑惑者
<font color=red>$mess</font>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
</select><input type=submit value='TOP'>
<br></form>
EOM
open(IN,"$ADMIN_LIST");
@A_LOG = <IN>;
close(IN);
print "@A_LOG";
&FOOTER;
exit;
}
#_/_/_/_/_/_/_/_/_/#
#_/ 武器編集 _/#
#_/_/_/_/_/_/_/_/_/#
sub ARM {
if($in{'id'} ne "$adminid" || $in{'pass'} ne "$adminpass"){
&ERR2("ID、パスワードエラー $num ");}
open(IN,"$TOWN_LIST") or &ERR("指定されたファイルが開けません。");
@TOWN_DATA = <IN>;
close(IN);
foreach(@TOWN_DATA){
($zcid,$zname,$zele,$zcon,$zmoney,$zmes,$zx,$zy,$zarm,$zpro,$zacc,$zuni,$zdis,$zbat)=split(/<>/);
$town_name[$zcid] = $zname;
}
open(IN,"$ARM_LIST");
@ARM_DATA = <IN>;
close(IN);
$i=0;
foreach(@ARM_DATA) {
($karmname,$karmval,$karmdmg,$karmwei,$karmele,$karmsta,$karmclass,$karmtownid) = split(/<>/);
if($karmdmg/2 <= $armwei){$wei=0;}else{$wei=($karmdmg-$karmwei);}
$karmval = int(((5000000*($karmdmg**2))+(50000000*($wei**2)))/(255**2));
if($karmtownid eq "0"){
$town = "全て";
}elsif($town_name[$karmtownid] eq ""){
$town = "非売品";
}else{
$town = "$town_name[$karmtownid]";
}
if($i >= 162 && $i <= 171){
$arm_data .= "<tr bgcolor=FFF8F8><td><input type=radio name=select value=$i></td><td>$karmname</td><td>$karmval</td><td>$karmdmg</td><td>$karmwei</td><td>$ELE[$karmele]</td><td>$town</td></tr>";
}elsif($karmdmg eq ""){
$arm_data .= "<tr><th colspan=7>$karmname</th></tr>";
}else{
$arm_data .= "<tr><td><input type=radio name=select value=$i></td><td>$karmname</td><td>$karmval</td><td>$karmdmg</td><td>$karmwei</td><td>$ELE[$karmele]</td><td>$town</td></tr>";
}
$i++;
}
$arm_data .= "<tr><td><input type=radio name=select value=$i></td><th colspan=6>新規武器作成</th></tr>";
&HEADER;
print <<"EOM";
<h2>武器管理ツール</h2>
<br>
オリジナル武器はここでは変更できません。(/charalog/arm を参照。)<br>
現在装備している武器も変更されるので注意してください。<br>
メモリが足りない場合は\表\示できない場合があります。<br>
ピンクの部分は上級の敵が落とすレアアイテム<br>
<form method="post" action="admin.cgi">
<input type=hidden name=mode value=ARM2>編集する武器:
<table bgcolor=aa0000><tbody bgcolor=FFFFF8>
<tr><td>選択</td><td>武器名</td><td>価格</td><td>威力</td><td>重さ</td><td>属性</td><td>販売店舗</td></tr>
$arm_data</tbody></table>
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='編集'>
<br></form>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
</select><input type=submit value='TOP'>
<br></form>
EOM
&FOOTER;
exit;
}
#_/_/_/_/_/_/_/_/_/#
#_/ 編集画面 _/#
#_/_/_/_/_/_/_/_/_/#
sub ARM2 {
if($in{'id'} ne "$adminid" || $in{'pass'} ne "$adminpass"){
&ERR("ID、パスワードエラー $num ");}
if($in{'select'} eq ""){&ERR2("選択されていません。");}
open(IN,"$TOWN_LIST") or &ERR2("指定されたファイルが開けません。");
@TOWN_DATA = <IN>;
close(IN);
foreach(@TOWN_DATA){
($zcid,$zname,$zele,$zcon,$zmoney,$zmes,$zx,$zy,$zarm,$zpro,$zacc,$zuni,$zdis,$zbat)=split(/<>/);
if($zcid eq "1"){
$zcid = 0;
$town = "全て";
}elsif($zname eq ""){
$town = "非売品";
}else{
$town = "$zname";
}
$town_sel .= "<option value=$zcid>$town\n";
}
$town_sel .= "<option value=10000>非売品\n";
open(IN,"$ARM_LIST");
@ARM_DATA = <IN>;
close(IN);
$i=0;
($karmname,$karmval,$karmdmg,$karmwei,$karmele,$karmsta,$karmclass,$karmtownid) = split(/<>/,$ARM_DATA[$in{'select'}]);
if($karmsta eq ""){$karmsta = 0;}
if($karmele eq ""){$karmele = 0;}
$arm_data .= "<tr><td><input type=text name=name value=$karmname></td><td><input type=text name=val value=$karmval></td><td><input type=text name=dmg value=$karmdmg></td><td><input type=text name=wei value=$karmwei></td><td><input type=text name=ele value=$karmele></td><td><input type=text name=sta value=$karmsta></td><td><select name=townid>$town_sel</select></td></tr>";
$i++;
&HEADER;
print <<"EOM";
<form method="post" action="admin.cgi">
<h3><font size=5 color=orange>$karmname</font> ファイル</h3>
<table>
<tr><td>武器名</td><td>価格</td><td>威力</td><td>重さ</td><td>属性</td><td>ステータス</td><td>販売店舗</td></tr>
$arm_data
</table>
<br>
<input type=hidden name=mode value=ARM3>
<input type=hidden name=select value=$in{'select'}>
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='編集'>
<br></form>
<br>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='編集を止める'>
</form>
<br>
EOM
&FOOTER;
exit;
}
#_/_/_/_/_/_/_/_/_/#
#_/ 編集画面 _/#
#_/_/_/_/_/_/_/_/_/#
sub ARM3 {
if($in{'id'} ne "$adminid" || $in{'pass'} ne "$adminpass"){
&ERR("ID、パスワードエラー $num ");}
if($in{'select'} eq ""){&ERR2("選択されていません。");}
open(IN,"$ARM_LIST");
@ARM_DATA = <IN>;
close(IN);
($karmname,$karmval,$karmdmg,$karmwei,$karmele,$karmsta,$karmclass,$karmtownid) = split(/<>/,$ARM_DATA[$in{'select'}]);
splice(@ARM_DATA,$in{'select'},1,"$in{'name'}<>$in{'val'}<>$in{'dmg'}<>$in{'wei'}<>$in{'ele'}<>$in{'sta'}<>$in{'class'}<>$in{'townid'}<>\n");
open(OUT,">$ARM_LIST") or &ERR('ARM 新しいデータを書き込めません。');
print OUT @ARM_DATA;
close(OUT);
&HEADER;
print <<"EOM";
<h2><font color=red>$in{'name'}</font>を編集しました。</h2>
<br>
<br>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='戻る'>
</form>
<br>
EOM
&FOOTER;
exit;
}
#_/_/_/_/_/_/_/_/_/#
#_/ 編集画面 _/#
#_/_/_/_/_/_/_/_/_/#
sub CHANGE {
if($in{'id'} ne "$adminid" || $in{'pass'} ne "$adminpass"){
&ERR("ID、パスワードエラー $num ");}
$dir="./charalog/main";
if(!open(page,"$dir/$in{'fileno'}")){
$datames .= "$dir/$fileがみつかりません。<br>\n";
return 1;
}
@page = <page>;
close(page);
($eid,$epass,$ename,$echara,$estr,$eint,$elea,$echa,$esol,$egat,$econ,$egold,$erice,$ecex,$eclass,$earm,$ebook,$ebank,$esub1,$esub2,$epos,$emes,$ehost,$edate,$email,$eos) = split(/<>/,$page[0]);
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = localtime($edate);
$year += 1900;
$mon++;
$ww = (Sun,Mon,Tue,Wed,Thu,Fri,Sat)[$wday];
$daytime = sprintf("%4d\/%02d\/%02d\/(%s) %02d:%02d:%02d", $year,$mon,$mday,$ww,$hour,$min,$sec);
&HEADER;
print <<"EOM";
<form method="post" action="admin.cgi">
<h3><img src="$IMG/$echara.gif" width="$img_wid" height="$img_height" border=0> <font size=5 color=orange>$ename</font> ファイル</h3>
<table>
<tr>
<th>ID</th><td><input type=text name=eid value='$eid'></td>
<th>PASS</th><td><input type=text name=epass value='$epass'></td>
<th>NAME</th><td><input type=text name=ename value='$ename'></td>
<th>画像ID</th><td><input type=text name=echara value='$echara'></td>
<tr>
<th>武力</th><td><input type=text name=estr value='$estr'></td>
<th>知力</th><td><input type=text name=eint value='$eint'></td>
<th>統率力</th><td><input type=text name=elea value='$elea'></td>
<th>人望</th><td><input type=text name=echa value='$echa'></td>
</TR>
<tr>
<th>兵士数</th><td><input type=text name=esol value='$esol'></td>
<th>訓練</th><td><input type=text name=egat value='$egat'></td>
<th>国</th><td><input type=text name=econ value='$econ'></td>
<th>金</th><td><input type=text name=egold value='$egold'></td>
</TR>
<tr>
<th>米</th><td><input type=text name=erice value='$erice'></td>
<th>貢献</th><td><input type=text name=ecex value='$ecex'></td>
<th>階級値</th><td><input type=text name=eclass value='$eclass'></td>
<th>武器</th><td><input type=text name=earm value='$earm'></td>
</TR>
<tr>
<th>書籍</th><td><input type=text name=ebook value='$ebook'></td>
<th>忠誠</th><td><input type=text name=ebank value='$ebank'></td>
<th>サブ1</th><td><input type=text name=esub1 value='$esub1'></td>
<th>サブ2</th><td><input type=text name=esub2 value='$esub2'></td>
</TR>
<tr>
<th>現在位置</th><td><input type=text name=epos value='$epos'></td>
<th>メッセージ</th><td><input type=text name=emes value='$emes'></td>
<th>ホスト</th><td><input type=text name=ehost value='$ehost'></td>
<th>更新日時</th><td><input type=text name=edate value='$edate'></td>
</TR>
<tr>
<th>MAIL</th><td><input type=text name=email value='$email'></td>
<th>行動チェック</th><td><input type=text name=eos value='$eos'></td>
<th></th><td></td>
<th></th><td></td>
</TR>
</table>
<br>
<input type=hidden name=mode value=CHANGE2>
<input type=hidden name=fileno value=$in{'fileno'}>
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='編集'>
<br></form>
<br>
<form method="post" action="admin.cgi">
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='編集を止める'>
</form>
<br>
<br>
<br>
<br>
MAPログあり<br>
<form method="post" action="admin.cgi">
<input type=hidden name=filename value=$in{'fileno'}>
<input type=hidden name=mode value=DEL>
<input type=hidden name=id value="$in{id}">
<input type=hidden name=pass value="$in{pass}">
<input type=submit value='このファイルを削除'>
</form>
<br>
<br>
<br>
MAPログなし<br>
<form method="post" action="admin.cgi">
<input type=hidden name=filename value=$in{'fileno'}>
<input type=hidden name=mode value=DEL2>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -