# データファイル名 $userdata = './user.dat'; # 来客者情報が入ってるデータ $userback = './userback.dat'; # 来客者情報が入ってるデータ(バックアップ) $petdata = './pet.dat'; # ペットの情報が入ってるデータ $lockkey = 1; # ファイルのロック(0=使用しない 1=使用する) $lockfile = './pet.lock'; # ロックファイル名 $method = 'POST'; # POSTかGETを選択 |
# ------------------------- #
# Sub Open Out User Data
# ユーザーデータの書きこみ
# ------------------------- #
sub openoutuserdata {
if ($lockkey == 1) { &lock; }
open(OUT,">$userdata") || &error("Can't write $userdata");
print OUT @new;
close(OUT);
if (@new[0] ne '') {
open(OUT,">$userback") || &error("Can't write $userback");
print OUT @new;
close(OUT);
}
&unlock;
}
|
# ------------------------- #
# Sub Open In User Data
# ユーザーデータの読みこみ
# ------------------------- #
sub openinuserdata {
if ($lockkey == 1) { &lock; }
open(IN,"$userdata") || &error("Can't open $userdata");
@lines = <IN>;
close(IN);
if ($lines[0] eq '') {
open(IN,"$userback") || &error("Can't open $userback");
@lines = <IN>;
close(IN);
}
&unlock;
foreach $line (@lines) {
($name,$pass,$gdate,$love) = split(/<>/,$line);
|
# ------------------------- #
# Sub New Pet
# 新規ペット登場
# ------------------------- #
sub newpet {
$deadname = $petname;
$petname = $FORM{'petname'};
if ($petname eq "") { &error("ペットに名前をつけてください"); }
if ($petname eq $deadname && $samename == 0) { &error("前と同じ名前はつけられません"); }
if ( $FORM{'sex'} == 1 ) { $sex = 'メス'; } else { $sex = 'オス'; }
$godfather = $FORM{'name'};
$birth = time;
$dead = 0;
$lastfeed = time;
$lastplay = time;
$good = 0;
$bad = 0;
$out = 0;
$outdate = 0;
$num++;
&openoutpetdata;
# $gdate = time - $dayhour[$playtime + 1];
# @new = "$FORM{'name'}<>$FORM{'pass'}<>$gdate<>$loved<>\n";
# &openoutuserdata;
&petform;
}
|