makutalk

※※※すでにmakutalkを使用していただいている方へ※※※
 すでに設置していただいている方に再び報告いたします。対応ブラウザ拡大のために「オリジナルタグ」の書式を変更しました。いままでの「<makutalk: .... />」形式や「<!-- makutalk: ..... -->」でも認識致しますが、さらに動作可能ブラウザの拡大のためにふたたびタグを変更致しました。すべて設計の甘さが原因です。まことに申し訳ありませんが、できるだけという新しいに変更していただけるとありがたいです。新しい形式は以下のような感じです。

<div id=makutalkdata style="display:none">
プロパティ=値 プロパティ=値 ....
</div>

 divタグでなくても、idがmakutalkdataであれば平気です。ただし、ブラウザにレンダリングさせないために、sytleでプロパティdisplayをnoneに設定してください。

■はじめに
 makutalkは、マクパペットに設定した会話(捨て台詞?)を喋らせるものです。ホームページやblogのサイドバー等に手軽に設置でき、各種カスタマイズもオリジナルタグを仕込むだけで簡単に行えます。例えば、上の表示のために使っているタグはこんな感じ。

<div id=makutalkdata style="display:none"> trans=h2,ab3,0xff0000 tcolor=0 tnext=10 bg=0xFFD4E4,0xE790B5,-1 bcolor=0xCFE2D4 talk=/anim,swing\tこんにちは! p=H-flKykaIgeYUy-YSEsAgV5LYAkU9M2gMe3g </div>

マクパペットのpcodeや動作はもちろん、喋る内容や間隔、背景や吹き出しの色などを自由に設定できます。

■設置方法
 まず設置。設置は設置したい場所に、以下のタグを貼り付けるだけです。

<script type="text/javascript" src="http://www.bb.isas.ne.jp/beltram/maku/makutalk.js"></script>

 ひとつのページに複数貼り付けても、ひとつしか起動しないようになっています。

■動作確認情報
 当方で動作を確認したブラウザは、

windows版 IE(5.5以上 及びIEを利用したタブブラウザ)
windows版 Mozilla Firefox 0.9.2
windows/macintosh版 opera 7.53
windows版 Netscape 7.1
macintosh版 Safari 125.9

 このうち、FirefoxとNetscapeではページの読み込み終了判定ができていません。IEとoperaではreadyStateのプロパティを使用して判定しているのですが、他のブラウザでは、相当する手段が見つけられませんでした。なので、ひとつでもタグを発見するか、規定時間が過ぎたらmakutalkを起動するようにしています。

■リリース履歴
  • 2004/8/31 使用可能ブラウザ拡大のためさらにタグを変更。プロパティtransと/transを追加
  • 2004/8/26 使用可能ブラウザ拡大のためタグを変更
  • 2004/8/24 ファーストリリース
    ■カスタマイズ
     あとは設置したファイルと同じファイル内に好きなだけタグを貼り付けていくだけです。タグ内ではいくつかのプロパティがありますが、いくつかサンプルを作ってみたので、とりあえずそちらをみてください。尚、会話内容は意味不明や、やや時期はずれとなっていますが、あくまでサンプルということでご了承ください。  各ソースは、右クリック->ソースの表示、もしくは、メニューの表示→ソースの表示で、確認してください。

     タグは、 <div id=makutalkdata style="display:none">プロパティ名=値 プロパティ名=値 ....</div>といった具合に、指定していきます。1行に何個でもプロパティを書くことはできますが、適度に見やすく書いたほうが後から修正しやすいです。

    [プロパティ一覧]

    • talk(会話の設定)
       talkは会話させたい文章を登録するものです。基本的に登録した順に喋っていきます。また会話だけでなく、2つのエスケープシーケンスと、アクション等を制御するコマンドが存在します。

      [エスケープシーケンス]
      \n 改行します。次の会話までの時間はtret秒となります。
      \t つづけてコマンドや会話を実行します。アクションと会話を連動するときなどに使います。

      [コマンド]

      • /anim,アニメーションコード
         マクパペットのアニメーションを変化させます。

      • /pcode,Pコード
         マクパペットを指定のPコードに着せ替えします。

      • /append,アクセサリリスト
         マクパペットに指定のアクセサリを追加します。アクセサリリストとは、b2=u01;am=u01といった具合です。

      • /remove,アクセサリリスト
         マクパペットから指定のアクセサリを削除します。

      • /replace,パーツID,アクセサリ,置換アクセサリ
         マクパペットの指定したパーツに付いているアクセサリを別のアクセサリと置き換えます。

      • /value,プロパティ,値
         tnext,tret,bg,bcolorといったプロパティの値を再設定します。tinitなど、プロパティによっては反映されないものも存在します。

      • /item,ファイル名(*.swfまたは*.jpg),X座標,Y座標,プライオリティ
         指定のファイルを指定の条件でアイテムとしてロードします。プライオリティは、マクペットを0とし、マイナスならマクパペットより後ろに、プラスなら手前に表示します。

      • /delitem,プライオリティ
         指定プライオリティのアイテムを削除します。

      • /trans,パーツID,アクセサリ名,色値 or 色変換値
         指定アクセサリの色変換を行ないます。詳細はプロパティtransをご覧ください。

    • tcolor(文字色の設定)
       会話の文字色を設定します。16進表記する場合は、0x808080といったように頭に0xを付けてください。

    • bg(背景の設定)
       背景の設定をします。jpg、もしくはswfファイル名を指定した場合は、それをロードして背景になります。tcolorと同じように色値を指定した場合は、その色が背景となります。また、色をふたつ指定して、そのふたつの色間のグラデーションにすることもできます。

      [グラデーションの指定方法]
      基本的に、色1,色2,角度と指定します。角度は0°以上360°未満。角度をマイナスにすると、円形のグラデーションになります。また360にすると、グルングルン回ります。

    • bcolor(吹き出しの設定)
       吹き出しの背景色を設定します。色設定は背景の色設定と同じように設定できます。

    • tinit
      makutalkがロードされて最初の会話が始まるまでの時間を指定できます。単位は秒。小数点指定もできます。デフォルトは5秒。

    • tret
      会話時の改行(\n)の時間を指定できます。デフォルトは3秒。

    • tnext
      会話時の次の会話までの時間を指定できます。デフォルトは8秒。

    • rnd
      通常、会話は、タグを書いた順に上から実行されていきますが、このrndを1にすると、すべてのtalkタグからランダムに実行するようになります。

    • end
      通常、タグはそのファイル内にあるものすべてが解釈されますが、このendを1にすると、その指定した行以降のタグはすべて無視されます。これはblogで最新エントリが最上部にくるから、日記的にmakutalkを使う場合、前のエントリのタグの干渉を防ぐためのものです。

       makutalkは多重起動防止を行っているので、ひとつのページにひとつしか存在できません。これにより、blogのサイドバーではなく、エントリ内にmakutalk本体を貼り付けても大丈夫。前のエントリに仕込んだmakutalkもそのエントリを先頭に表示させれば、会話を再生することが出来ます。

    • twin
      会話ウインドウ(吹き出し)の基本表示時間。デフォルトは2秒。この値+文字数×0.3秒間、ウインドウが表示されます。

    • tsound
      会話時に音を鳴らすかどうかを示す値。デフォルトは1でon。0にすると音を鳴らしません。

    • tanim
      会話時に自動でやるアニメーションの設定。アニメーションコードを書けば、会話時にそのアニメーションをかならずやります。

    • trans[new!]
      アクセサリの色変換を行います。指定方法は2つあり、

      パーツID,アクセサリ名,色値(0x0〜0xFFFFFF)だと指定アクセサリを指定値で塗り直し、

      パーツID,アクセサリ名,色値赤(-255〜255),色値緑(-255〜255),色値青(-255〜255)だと、指定3色値に色変換を行います。

      前者は単色しか使ってないパーツでいろ指定しやすく、後者は全体的に色を指定値よりに変換します。また/で続けて、次の指定を行うことが出来ます。

      色変換を視覚的に行う機能をmaku dresserにつけてみたので、そちらを参考にしてください。

    ■その他
  • ブログによっては、サイドバーなどに設置した場合、別フレームになっていたりしちゃうと表示されません。また、ブログによってはエントリ入力時、改行コードを<br />に変換するところもあるので、<makutalk:>タグを沢山入力する場合は、意味もなく改行を増やさないように設定がありな場合もあるです。

  • 背景やアイテムで指定できるjpegファイルは、プログレッシブjpgは使えません。これは、flashの仕様です。

    homeに戻る