PETROOM大改造
【萌え萌えキャラクターズと遊ぼー。】

時刻によってキャラ画像を切り替えよう

「あかりと一緒」にも、このような改造が施されていますが、
具体的にいうと、昼間は制服、夜は私服にしよう、という改造です。
説明上、制服と私服と使いますが、それぞれご自分のやりたいことに置き換えて読んで下さい。

この改造をする前に、画像を用意してください。
時刻によって制服と私服の画像を切り替えるには、それぞれ同じパターン数の画像が欲しいところです。
同じメッセージなのに、制服と私服で表情が違うとか、そういったことをなくすためです。

では、フォルダを2つ作って下さい、場所はpet.cgiが置かれているところが一番イイですね。
ダメな人は、画像を作ってもいい場所にフォルダを作って、そのパスを覚えておいて下さい。
片方を制服用「image_s」、もう片方を私服用「image_p」として、
それぞれに画像を格納します。
そして、それぞれ同じパターンの画像には、同じ名前を付けます。
寝てる画像なら、どちらもneteru.gifとか。
つまり、ファイル名だけを見たら、どっちがどっちのフォルダだか、分からないような状態にします(^^;
その他の画像(ランダムやスペシャル、終了、四隅の角丸画像、フキダシ用画像など)も、
両方のフォルダにコピーして入れておいてください。
同じ画像が2枚になり、効率が悪いですが、この方が後で分かりやすいと思いますので。


では、改造に入りましょう。
プログラムの最初の方、下記の場所を下記のように追記、変更してください。

# イメージ画像が入ってるフォルダの相対パス
# CGIと同じ場所にフォルダを置く場合は'./フォルダ名/'; 上の階層は'../フォルダ名/';
# swfファイルと角画像もこのフォルダの中に格納します
# $img = '';
    # 現在の日付取得
    ($isec,$imin,$ihour,$iday,$imon,$iyear) = localtime(time);
    $iyear += 1900;
    $imon++;

    if ($ihour >= 7 && $ihour < 18) {
        $img = './image_s/';
    }
    else {
        $img = './image_p/';
    }

}

7:00am〜6:00pmの間は、image_sというフォルダから画像を読みこみ、
6:00pm〜7:00amの間は、image_pというフォルダから画像を読みこみます。
ファイル名は同じなので、プログラム中のファイル名を変更する必要はなく、
読みこむフォルダを切り替えるだけでOKなのです(^-^)

あと、この改造により、現在の日付をプログラムの最初の方で取得することになり、
以降、同じ処理は必要なくなりますので、
その他の改造で、所々に「(イベント用含む)現在の日付取得」がある方は、
全て削除してしまってOKですし、コメントにするだけでもOKです。

また、これから新たな改造を加える際にも「現在の日付の取得」は追加する必要はありません。


背景画像にキャラを登場させる改造やフキダシの改造を行っていない方は、これで終了です。
もし、イメージタグのsrc$imgを何らかの理由で削除されてしまった方は、
全てのイメージタグのsrc$○○_img$_[0]の前に$imgを付け加えて、
src=\"$img$○○_img\"とか、src=\"$img$_[0}\"として下さい。

背景&キャラの改造やフキダシの改造を施している方は、下記の部分を下記のように変更してくださいませ。

# ------------------------- #
# Sub Pet Now
# ペットの現在の状況
# ------------------------- #
sub petnow {
    $bgimage = '背景画像.jpg';
    print "<tr>\n";
    print "<td align=\"center\" background=\"$img$bgimage\" width=\"320\" height=\"240\" valign=\"bottom\">";
    print "<img src=\"$img$_[0]\" border=\"0\"></td>";
    print "</tr>\n";
    &bar('',$_[1]);
}

# ------------------------- #
# Sub Pet Now
# ペットの現在の状況(吹き出し枠)
# ------------------------- #
sub petnowwaku {
    $bgimage = '背景画像.jpg';
    print "<tr>\n";
    print "<td align=\"center\" background=\"$img$bgimage\" width=\"320\" height=\"240\" valign=\"bottom\">";
    print "<img src=\"$img$_[0]\" border=\"0\"></td>";
    print "</tr>\n";
    &barwaku('',$_[1]);
}



# ------------------------- #
# Sub Bar Waku
# バー(吹き出し)
# ------------------------- #
sub barwaku {
    $bgimage = 'waku.gif';
    print "<tr align=\"center\" bgcolor=\"$barcolor\"><td $_[0] background=\"$img$bgimage\" width=\"280\" height=\"65\"><BR>$font1$_[1]</font></td></tr>\n";
}


一部の画像が表示されない場合は、まず、イメージタグのsrc内に、
$imgがちゃんと付いているかどうか、確認してみてください。
次に、それぞれのフォルダに、同じ画像が入っているかどうか確認してください。
あと、プラウザのキャッシュもありますので、再読込もしてみて下さい。
それでもダメでしたら、サポートBBSまでご連絡下さい。

表示できるようになるまで、お付き合いしますので(^-^)