# お腹が空いている時の処理 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; } |