オプションは「全体」「ちぐら」「ぬこ」の単位で設定でき、以下のとおり影響します
- 「全体」に設定したときはすべてのちぐらとすべてのぬこ
- 「ちぐら」に設定したときはそのちぐらと、ちぐらに注がれているすべてのぬこ
- 「ぬこ」に設定したときはそのぬこ
異にゃる単位でおにゃじオプションを設定したときは「全体」「ちぐら」「ぬこ」の順で「ぬこ」が最も優先されます
例えばこんにゃ感じ。おかわりいただけるだろうにゃ ฅ^✧ω✧^ฅ
設定した値 | 実際に反映される値 | |
---|---|---|
全体 | atsu:2, kaburu:false | |
ちぐらA | atsu:4, kaburu:true | kaburu:true |
しろぬこ | atsu:8 | atsu:8 |
くろぬこ | atsu:4 | |
ちぐらB | kaburu:false | |
さびぬこ | atsu:2 |
オプションの設定方法は以下のとおりです
概要 | 型 | デフォ | 全体 | ちぐら | ぬこ | |
---|---|---|---|---|---|---|
kaburu | ちぐらを親要素にかぶせる | bool | false | ฅ•ω•ฅ | ฅ•ω•ฅ | |
nekoze | ちぐらのz-index | int | 1 | ฅ•ω•ฅ | ฅ•ω•ฅ | |
nawabari | ちぐらの広袤 | string array | 100% | ฅ•ω•ฅ | ฅ•ω•ฅ | |
atsu | ぬこのデカさ (ぬこ圧) | int | ぬこによりけり | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
nekoashi | ぬこの歩幅 | int | 5 | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
nekome | ぬこの描画レート | int | 15 | ฅ•ω•ฅ | ฅ•ω•ฅ | |
kimagure | デフォルトのKi・Ma・Guレート | float | 0.05 | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
shigusa | デフォルトのしぐさ | string | default | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
naderu | マウスオーバー時の反応 | callback | よしにゃにゃshigusa | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
kigasumu | にゃで終わったときの動き | callback | shigusaを戻す | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
jarasu | クリック時の反応 | callback | よしにゃにゃshigusaで鳴く | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
akiru | じゃらされ終わったときの動き | callback | shigusaを戻し鳴きやむ | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
soppo | じゃらしの飽きっぽさ | int | 3000 | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
balloon | 吹き出しのいろみ | string Object | ぬこによりけり | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
innyaText | 吹き出しの書き出し方式 | bool | true | ฅ•ω•ฅ | ฅ•ω•ฅ | ฅ•ω•ฅ |
debug | デバッグログの出力 | bool | false | ฅ•ω•ฅ | ||
error | エラーログの出力 | bool | false | ฅ•ω•ฅ |
Chigura.weave('kaburu-0', 'p-kaburu-0', {kaburu:true});
Chigura.maneku('shiro', 'Shiro', 'kaburu-0');
Chigura.weave('kaburu-1', 'p-kaburu-1', {kaburu:true, nekoze:-1});
Chigura.maneku('shiro', 'Shiro', 'kaburu-1');
Chigura.weave('kaburu-2', 'p-kaburu-2', {kaburu:false});
Chigura.maneku('shiro', 'Shiro', 'kaburu-2');
Chigura.weave('nawabari-0', 'p-nawabari-0', {nawabari:['80px', '60px']});
Chigura.maneku('shiro', 'Shiro', 'nawabari-0');
Chigura.weave('nawabari-1', 'p-nawabari-1', {nawabari:'50%'});
Chigura.maneku('shiro', 'Shiro', 'nawabari-1');
整数を指定してください。あんましデカすぎたらあかん。デフォ値はぬこによりけりです
Chigura.weave('atsu-0', 'p-atsu-0', {atsu:1});
Chigura.maneku('shiro', 'Shiro', 'atsu-0');
Chigura.weave('atsu-1', 'p-atsu-1', {atsu:2});
Chigura.maneku('shiro', 'Shiro', 'atsu-1');
Chigura.weave('atsu-2', 'p-atsu-2', {atsu:4});
Chigura.maneku('shiro', 'Shiro', 'atsu-2');
ちぐらの広袤を越えにゃいようにしてるので、ちぐらに対して値が大きすぎると逆に動かにゃくにゃります。デフォ値は5です
Chigura.weave('nekoashi-0', 'p-nekoashi-0', {nekoashi:1});
Chigura.maneku('shiro', 'Shiro', 'nekoashi-0');
Chigura.weave('nekoashi-1', 'p-nekoashi-1', {nekoashi:5});
Chigura.maneku('shiro', 'Shiro', 'nekoashi-1');
Chigura.weave('nekoashi-2', 'p-nekoashi-2', {nekoashi:20});
Chigura.maneku('shiro', 'Shiro', 'nekoashi-2');
環境によりけりですが、一般的にゃ60fpsであるにゃらば1秒間に4回描画することににゃるでしょう
にゃので値が小さければその分処理は重くにゃるハズにゃん... ฅ´•ω•`ฅ
整数を指定してください。デフォ値は15です。kimagureも参照ください
Chigura.weave('nekome-0', 'p-nekome-0', {nekoashi:5});
Chigura.maneku('shiro', 'Shiro', 'nekome-0');
Chigura.weave('nekome-1', 'p-nekome-1', {nekoashi:15});
Chigura.maneku('shiro', 'Shiro', 'nekome-1');
Chigura.weave('nekome-2', 'p-nekome-2', {nekoashi:60});
Chigura.maneku('shiro', 'Shiro', 'nekome-2');
このときnekomeが15であるにゃらば、一般的にゃ環境では1秒間に1回新しいshigusaのぬこが描画されるでしょう
(選択されたshigusaがたまたま前回のshigusaとおんにゃじににゃることはあるにゃんよ ฅ^•ﻌ•^ฅ)
0以上、1以下の数値を指定してください。デフォ値は0.1です
Chigura.weave('kimagure-0', 'p-kimagure-0', {kimagure:0.01});
Chigura.maneku('shiro', 'Shiro', 'kimagure-0');
Chigura.weave('kimagure-1', 'p-kimagure-1', {kimagure:0.05});
Chigura.maneku('shiro', 'Shiro', 'kimagure-1');
Chigura.weave('kimagure-2', 'p-kimagure-2', {kimagure:0.75});
Chigura.maneku('shiro', 'Shiro', 'kimagure-2');
Chigura.weave('shigusa-0', 'p-shigusa-0', {shigusa:'kyunkyunb'});
Chigura.maneku('shiro', 'Shiro', 'shigusa-0');
Chigura.weave('shigusa-1', 'p-shigusa-1', {shigusa:'poroporoh'});
Chigura.maneku('shiro', 'Shiro', 'shigusa-1');
Chigura.weave('shigusa-2', 'p-shigusa-2', {shigusa:'suyasuyak'});
Chigura.maneku('shiro', 'Shiro', 'shigusa-2');
ぬこで参照可能にゃメソッドはこちらを参照ください。デフォルトの設定はよしにゃです
let naderu = function(nuko) {
⁄⁄ 配列からランダムでセリフを選択し鳴く
nuko.naku(['触らにゃいでにゃ', 'そっとしといてにゃ', 'いまはめんどいにゃ', 'やめてにゃ', 'しつこいにゃ', 'ねむいのにゃ', 'ひとりにさせてにゃ', 'そういう気分じゃにゃいにゃ']);
⁄⁄ しぐさを変更
nuko.shigusa('meramerah');
};
Chigura.weave('naderu-0', 'p-naderu-0', {naderu:naderu});
Chigura.maneku('shiro', 'Shiro', 'naderu-0');
let naderu = function(nuko) {
⁄⁄ Ki・Ma・Guレートを変更
nuko.kimagure(1);
};
Chigura.weave('naderu-1', 'p-naderu-1', {naderu:naderu});
Chigura.maneku('shiro', 'Shiro', 'naderu-1');
let naderu = function() {
⁄⁄ ちぐらの背景色を変更
document.getElementById('p-naderu-2').style.backgroundColor = '#82a9da';
};
let kigasumu = function() {
⁄⁄ ちぐらの背景色を戻す
document.getElementById('p-naderu-2').style.backgroundColor = null;
};
Chigura.weave('naderu-2', 'p-naderu-2', {naderu:naderu, kigasumu:kigasumu});
Chigura.maneku('shiro', 'Shiro', 'naderu-2');
let naderu = function(nuko) {
⁄⁄ ぬこ(canvas)の枠線を初期化
nuko.nekovas.style.border = 'none';
};
let kigasumu = function(nuko) {
⁄⁄ じゃれてるときはにゃにもしにゃい
if(nuko.jare) return;
⁄⁄ ぬこ(canvas)の枠線をセット
nuko.nekovas.style.border = 'solid';
};
Chigura.weave('kigasumu-0', 'p-kigasumu-0', {naderu:naderu, kigasumu:kigasumu});
Chigura.maneku('shiro', 'Shiro', 'kigasumu-0');
Chigura.weave('kigasumu-1', 'p-kigasumu-1', {kigasumu:null});
Chigura.maneku('shiro', 'Shiro', 'kigasumu-1');
ぬこで参照可能にゃメソッドはこちらを参照ください。デフォルトの設定はよしにゃに鳴きます
let jarasu = function(nuko, e) {
⁄⁄ ダイアログを表示
alert('我輩はぬこである。名前は' + nuko.wagahai + 'にゃ!');
⁄⁄ 必要に応じてpreventDefaultする
e.preventDefault();
};
Chigura.weave('jarasu-0', 'p-jarasu-0', {jarasu:jarasu});
Chigura.maneku('shiro', 'Shiro', 'jarasu-0');
let jarasu = function(nuko) {
⁄⁄ 配列からランダムでセリフを選択し鳴く
nuko.naku(['何を話してるにゃ', '聞きとれにゃいにゃ', '赤坂見附にゃ', '丸の内線にゃ', '新宿はまだまだにゃ', '映画がよかったのにゃ', 'そばにおいでにゃ', '四谷の駅にゃ', 'ここはどこの駅かにゃ', '次で降りるにゃ', 'そのまま行ってもいいにゃ']);
⁄⁄ 吹き出しの背景色を変化させる
nuko.balloon.animate({
background : ['#f0e68c', '#ffc0cb'],
}, {
fill : 'forwards',
duration : 3000,
});
};
Chigura.weave('jarasu-1', 'p-jarasu-1', {jarasu:jarasu});
Chigura.maneku('shiro', 'Shiro', 'jarasu-1');
let jarasu = function(nuko) {
⁄⁄ Ka-t-teアルゴリズムを発動
nuko.katte();
};
Chigura.weave('jarasu-2', 'p-jarasu-2', {jarasu:jarasu});
Chigura.maneku('shiro', 'Shiro', 'jarasu-2');
let akiru = function(nuko) {
⁄⁄ しぐさを戻す
nuko.shigusa();
⁄⁄ Ki・Ma・Guレートを戻す
nuko.kimagure();
⁄⁄ 鳴きやむ
nuko.yamu();
⁄⁄ ダイアログを表示
alert('もう飽きたにゃ!ฅ(`ꈊ´ฅ)');
};
Chigura.weave('akiru-0', 'p-akiru-0', {akiru:akiru});
Chigura.maneku('shiro', 'Shiro', 'akiru-0');
Chigura.weave('akiru-1', 'p-akiru-1', {akiru:null});
Chigura.maneku('shiro', 'Shiro', 'akiru-1');
Chigura.weave('soppo-0', 'p-soppo-0', {soppo:1000});
Chigura.maneku('shiro', 'Shiro', 'soppo-0');
Chigura.weave('soppo-1', 'p-soppo-1', {soppo:3000});
Chigura.maneku('shiro', 'Shiro', 'soppo-1');
Chigura.weave('soppo-2', 'p-soppo-2', {soppo:5000});
Chigura.maneku('shiro', 'Shiro', 'soppo-2');
カラーコードを指定する
いい感じの色を見繕って設定します。選択肢はblue brown gray green orange purple red yellow ですcssで設定するから余計にゃことするにゃฅ(`ꈊ´ฅ)というときはnullを指定してください。デフォルトはぬこによりけりです
オリジニャル色を指定する
文字色colorと背景色backgroundと枠線の色borderColorを指定できます。こんにゃ感じにゃฅ^-ω-^ฅ{color: "#6d3c14", background: "#c7b897", borderColor: "#877254"}
Chigura.weave('balloon-0', 'p-balloon-0');
Chigura.maneku('blue', 'Shiro', 'balloon-0', {balloon:'blue'});
Chigura.maneku('brown', 'Shiro', 'balloon-0', {balloon:'brown'});
Chigura.maneku('gray', 'Shiro', 'balloon-0', {balloon:'gray'});
Chigura.maneku('green', 'Shiro', 'balloon-0', {balloon:'green'});
Chigura.maneku('orange', 'Shiro', 'balloon-0', {balloon:'orange'});
Chigura.maneku('purple', 'Shiro', 'balloon-0', {balloon:'purple'});
Chigura.maneku('red', 'Shiro', 'balloon-0', {balloon:'red'});
Chigura.maneku('yellow', 'Shiro', 'balloon-0', {balloon:'yellow'});
Chigura.weave('balloon-1', 'p-balloon-1');
Chigura.maneku('shiro', 'Shiro', 'balloon-1', {balloon:null});
Chigura.weave('balloon-2', 'p-balloon-2');
Chigura.maneku('shiro', 'Shiro', 'balloon-2', {color:'#6d3c14', background:'#c7b897', borderColor:'#877254'});
trueのとき、innerText、falseのとき、innerHTMLです
let rocket = '<span style="color:red">にゃんだかんだと聞かれたら<br/>答えてあげるが世のにゃさけ<br/>にゃーんてにゃ</span>';
let jarasu = function(nuko) {
⁄⁄ 世界の破壊を防ぐため
nuko.naku(rocket);
}
Chigura.weave('innyaText-0', 'p-innyaText-0');
Chigura.maneku('shiro', 'Shiro', 'innyaText-0', {jarasu:jarasu, innyaText:true});
let rocket = '<span style="color:red">にゃんだかんだと聞かれたら<br/>答えてあげるが世のにゃさけ<br/>にゃーんてにゃ</span>';
let jarasu = function(nuko) {
⁄⁄ 世界の平和を守るため
nuko.naku(rocket);
}
Chigura.weave('innyaText-1', 'p-innyaText-1');
Chigura.maneku('shiro', 'Shiro', 'innyaText-1', {jarasu:jarasu, innyaText:false});