不届き者には処罰を(笑)簡単に与えられるように

規約違反者とかに3日睡眠とデータ削除の処罰を簡単に与えられるように。
むやみに使ったり悪用はしないようにー

ではsystem.cgiに下記を追加。

if ($m eq '管理人の名前') { # 管理人の名前を判別する方法はほかにもありますので判別方法を勝手に変えてもいいです。どうなってもしりませんが。
push @actions, 'データ削除';
push @actions, '3日睡眠';
$actions{'データ削除'} = sub{ &sakuzyo };
$actions{'3日睡眠'} = sub{ &suimin };
}

基本のアクションコマンドの所に上記を追加してくださいねー。

それで、変なところに追加しなければ大丈夫なスクリプトを追加してくださいー。
常識の範囲内ならどこでも大丈夫です。

#================================================
# @3日睡眠
#================================================
sub suimin {

my $target = shift;
unless ($target) {
$mes  = qq|睡眠を強制させる場合は下記の方法で行って下さい。<br>$p|;
$mes .= qq|@3日睡眠>プレイヤー名 で睡眠選択。|;
$act_time = 0;
return;
}

if ($target) {
my $yid = unpack 'H*', $target;
unless (-d "$userdir/$yid") {
$mes = "$targetというプレイヤーは存在しません";
return;
}
my %p = &get_you_datas($yid, 1);

&reg;ist_you_data($target, 'sleep', 60*60*24*3);
$com = "@3日睡眠 $targetは利用規約に反した行動をした為、3日間の睡眠とします。";
return;
}
$mes  = qq|3日睡眠状態とさせる人を選択してください。$p|;
$act_time = 0;
}

#================================================
# @データ削除
#================================================
sub sakuzyo {

my $target = shift;

unless ($target) {
$mes  = qq|データを削除する人を下記の方法で選んで下さい。<br>$p|;
$mes .= qq|@データ削除>プレイヤー名|;
$act_time = 0;
return;
}

if ($target) {
my $yid = unpack 'H*', $target;
unless (-d "$userdir/$yid") {
$mes = "$targetというプレイヤーは存在しません";
return;
}
my %p = &get_you_datas($yid, 1);


$com = "@データ削除 $targetは利用規約に反する行動をした為、削除及びブラックリスト追加とします。";

&add_black_list($p{host}); # ブラリス入れたくなければこの分を#で削除。
&delete_guild_member($p{guild}, $p{name}) if $p{guild};

&delete_directory("$userdir/$yid");
&minus_entry_count;
return;
}
$mes  = qq|データ削除をする人を選んで下さい。$p|;
$act_time = 0;
}

これで完成。
データ削除の方はブラリスにも入れるようになってますので注意。

絶対に悪用だけはしないでください。
お疲れ様でした。
最終更新:2013年02月09日 15:30