# お腹が空いている時の処理
if ($hungry > 0) {
# お腹が空いて餓死寸前
if ($hungry >= $deadline - 1) { &petnow($tired_img,$tired_msg); }
else { &petnow($cry_img,$hungry_msg);
$swfurl = $img . 'catvoice.swf';
if ($voice == 1) { &flash($swfurl); }
}
$plusfeed = 'feed';
$minusfeed = 'hit_pat_play_out';
return;
}
# 好感度の1回きりのイベント
if ($love >= 50 && $event01 == 0) {
$disp_img = '喜ぶ画像.gif';
$disp_msg = '50達成おめでとう!';
&petnow($disp_img,$disp_msg);
return;
}
# 訪問回数の1回きりのイベント
if ($visitcnt >= 20 && $event02 == 0) {
$disp_img = '喜ぶ画像.gif';
$disp_msg = '20回ありがとう!';
&petnow($disp_img,$disp_msg);
return;
}
# 食後の経過時間を$timeafterに代入
$timeafter = int((time - $lastfeed)/3600);
|
# ------------------------- #
# Sub Pet Form
# ペットフォーム
# ------------------------- #
sub petform {
&checkname;
if (!$petname) { &nopet;exit; }
&header;
&title;
&bodytop("ペットデータ($num代目)");
&petdata;
&condition;
if ($noaction == 0 && $enter != 1) {
print "<tr>\n";
print "<td>\n";
&tabletop;
if ($love >= 50 && $event01 == 0 && $hungry == 0) {
&input('radio','mode','event01_01',' checked','好感度アップ');
print "</td>\n";
print "<td>\n";
&input('radio','mode','event01_02','','好感度ダウン');
print "</td>\n";
print "</tr>\n";
}
elsif ($visitcnt >= 20 && $event02 == 0 && $hungry == 0) {
&input('radio','mode','event02_01',' checked','誉める');
print "</td>\n";
print "<td>\n";
&input('radio','mode','event02_02','','叱る');
print "</td>\n";
print "</tr>\n";
}
else {
&input('radio','mode','feed',' checked','餌をあげる<br>');
&input('radio','mode','pat','','なでる<br>');
&input('radio','mode','out','','外に出す');
print "</td>\n";
print "<td>\n";
&input('radio','mode','play','','遊ぶ<br>');
&input('radio','mode','hit','','しかる<br>');
&input('radio','mode','owner','','飼い主ランキング');
print "</td>\n";
print "</tr>\n";
}
print "<tr>\n";
print "<td colspan=\"2\">\n";
print "<div align=\"right\">\n";
&input('hidden','name',$FORM{'name'},'','');
&input('hidden','pass',$FORM{'pass'},'','');
&input('hidden','good',"$scheduledsr[$timeafter]$plusfeed",'','');
&input('hidden','bad',"$schedulednt[$timeafter]$minusfeed",'','');
&input('submit','','OK!','','<br>');
print "</div>\n";
&tablebottom;
} else { $actionflag = 1; }
&bodybottom;
&openoutpetdata;
&footer;
}
|
# ------------------------- #
# Sub Action
# アクション
# ------------------------- #
sub action {
$playmsg = "$playtime時間" if $playtime != 0;
$playmsg = "$playminute分" if $playtime == 0;
&checkname;
&error("まだ$playmsg経過していません") if $enter == 1;
&header;
&title;
&bodytop("ペットデータ($num代目)");
&petdata;
srand(time);
$rnd = int(rand(10) + 1);
$fa = $FORM{'mode'};
if ($fa eq 'play') { $lastplay = time; }
if ($fa eq 'out') { $out = 1; $outdate = time; }
if ($fa eq 'event01_01') {
$disp_img = '喜ぶ画像.gif';
$disp_msg = '好感度がアップしました。';
&petnow($disp_img,$disp_msg);
$love = $love + 10;
$event01 = 1;
}
elsif ($fa eq 'event01_02') {
$disp_img = '悲しむ画像.gif';
$disp_msg = '好感度がダウンしました。';
&petnow($disp_img,$disp_msg);
$love = $love - 10;
$event01 = 1;
}
elsif ($fa eq 'event02_01') {
$disp_img = '誉められる画像.gif';
$disp_msg = '嬉しそうです。';
&petnow($disp_img,$disp_msg);
$event02 = 1;
}
elsif ($fa eq 'event02_02') {
$disp_img = '叱られる画像.gif';
$disp_msg = '悲しそうです。';
&petnow($disp_img,$disp_msg);
$event02 = 1;
}
elsif ($rnd <= $rnd_border) {
&petnow($rnd_img,$rnd_msg);
$love--;
}
elsif ($FORM{'good'} =~ /$fa/) {
&petnow($good_img{$fa},$good_msg{$fa});
$love++;$good++;
if ($fa eq "feed") { $lastfeed = time; }
}
elsif ($FORM{'bad'} =~ /$fa/) {
&petnow($bad_img{$fa},$bad_msg{$fa});
$love--;$bad++;
}
else {
&petnow($else_img{$fa},$else_msg{$fa});
}
&openoutpetdata;
$goodbye = time - (60 * 60 * 24 * $goodbye);
$newlove = $love;
&openinuserdata('action');
&openoutuserdata;
$actionflag = 1; # 飼い主ランキングのリンクを表示
&bodybottom;
&footer;
}
|