chigura.jsをimportすることでいくつかのメソッドを参照できます
つまりはこんにゃ感じにゃ(๑•ω•́ฅ✧
import Chigura from '/よしにゃにゃディレクトリ/chigura/chigura.js';
Chigura.weave();
それとは別に、naderu、kigasumu、jarasu、akiru、asobuで設定したcallbackの引数とにゃるnukoクラスのメソッドもこのページで説明します
つまりはこんにゃ感じにゃฅ-ω-ฅ
function(nuko) {
nuko.shigusa();
}
概要 | 引数1 | 引数2 | 引数3 | 引数4 | 戻り値 | ||
---|---|---|---|---|---|---|---|
wagahai | ぬこの名を取得 | getter | string | ||||
taicho/taiko | ぬこの横幅、縦幅を取得 | getter | int | ||||
x/y | ぬこの現在地を取得 | getter | int | ||||
nekovas | ぬこのcanvas要素を取得 | getter | canvas | ||||
balloon | ぬこの吹き出し要素を取得 | getter | div | ||||
enokoro | ぬこがじゃれてる判定 | getter | bool | ||||
katte | Ka-t-teアルゴリズム | void | |||||
akiru | 飽きる | 飽きるcallback | void | ||||
shigusa | shigusaを変更する | shigusa | void | ||||
kimagure | Ki・Ma・Guレートを変更する | Ki・Ma・Guレート | void | ||||
naku | 吹き出しを表示する | 鳴き声 | void | ||||
yamu | 吹き出しを非表示にする | void |
単純にマージしているので複数回設定したときは後勝ちです
こんにゃ感じにゃฅ•ω•ฅ
Chigura.option({
karubu:true,
atsu:4,
balloon:{color: "#6d3c14", background: "#c7b897", borderColor: "#877254"},
});
デフォルトでwidthとheightは100%にゃので親要素の広袤をよしにゃにするかnawabariを設定してください
任意でちぐら単位のオプションを設定することができます。オプションの一覧はこちらを参照ください
こんにゃ感じにゃฅ•ω•ฅ
let jarasu = function() { alert('我輩はぬこである!'); }
Chigura.weave('chigura-id', 'parent-id', {
nekoashi:10,
nekome:60,
kimagure:0.5,
jarasu:jarasu,
});
<div id="[parent-id]">
親要素
<div id="[chigura-id]" class="chigura">
</div>
</div>
任意でぬこ単位のオプションを設定することができます。オプションの一覧はこちらを参照ください
こんにゃ感じにゃฅ•ω•ฅ
Chigura.maneku('Jiji', 'Kuro', 'chigura-id', {
soppo:5000,
innyaText:true,
});
<div id="[parent-id]">
親要素
<div id="[chigura-id]" class="chigura">
<canvas id="[chigura-id]-nekovas-Jiji" class="chigura-nekovas [chigura-id]-nekovas"></canvas>
<div id="[chigura-id]-balloon-Jiji" class="chigura-balloon [chigura-id]-balloon"></div>
</div>
</div>
こんにゃ感じにゃฅ•ω•ฅ
Chigura.asobu('Jiji', 'chigura-id', function (nuko) {
nuko.naku('にゃーにゃー');
});
Chigura.asobu('Jiji', 'chigura-id', function (nuko) {
nuko.yamu();
});
こんにゃ感じにゃฅ•ω•ฅ
let jarasu = function(nuko) {
nuko.naku(
`wagahaiは${nuko.wagahai}にゃん。<br/>` +
`taichoは${nuko.taicho}、taikoは${nuko.taiko}<br/>` +
`現在地はx:${nuko.x}, y:${nuko.y}にゃんよ`
);
};
Chigura.maneku('shiro', 'Shiro', 'wagahai-sample', {
innyaText:false,
jarasu:jarasu,
});
こんにゃ感じにゃฅ•ω•ฅ
こんにゃ感じにゃฅ•ω•ฅ
let naderu = function(nuko) {
⁄⁄ mouseenterするとcanvasの背景色をランダムに変更
let colors = ['#ffe4e1', '#e0ffff', '#eee8aa', '#ffe4c4', '#e6e6fa'];
nuko.nekovas.style.backgroundColor = colors[Math.floor(Math.random() * colors.length)];
};
Chigura.maneku('shiro', 'Shiro', 'nekovas-sample', {
naderu:naderu,
});
こんにゃ感じにゃฅ•ω•ฅ
let fontSize = 10;
let jarasu = function(nuko) {
⁄⁄ clickすると吹き出しのフォントサイズを拡大
fontSize++;
nuko.balloon.style.fontSize = fontSize + 'px';
nuko.naku(fontSize + 'pxにゃん!');
};
Chigura.maneku('shiro', 'Shiro', 'balloon-sample', {
jarasu:jarasu,
});
そもそもじゃらしていにゃい、akiruが設定されていにゃい(ここ引っ掛けにゃんฅ•ω•ฅ)、akiruがすでに実行済みのときfalseです
kigasumuがakiruに干渉するときの判定条件として便利にゃ(๑•ω•́ฅ✧
akiruも参照ください
こんにゃ感じにゃฅ•ω•ฅ
let naderu = function(nuko) {
⁄⁄ mouseenterすると一定時間おきにenokoroの状態を吹き出しに表示
setInterval(() => { nuko.naku(nuko.enokoro); }, 1000);
};
Chigura.maneku('shiro', 'Shiro', 'enokoro-sample', {
naderu:naderu,
});
こんにゃ感じにゃฅ•ω•ฅ
let jarasu = function(nuko) {
⁄⁄ clickするとKa-t-teアルゴリズム発動
nuko.katte();
};
Chigura.maneku('shiro', 'Shiro', 'katte-sample', {
jarasu:jarasu,
});
引数がにゃいときは前者は実行されません。つまり、kigasumuがakiruに干渉するとき待機中のakiruをキャンセルするのに便利にゃんよ(๑•ω•́ฅ✧
enokoroも参照ください
こんにゃ感じにゃฅ•ω•ฅ
let kigasumu = function(nuko) {
⁄⁄ mouseleaveするとakiruのデフォルト動作(shigusaを戻し吹き出しを非表示)がキャンセルされる
nuko.akiru();
};
Chigura.maneku('shiro', 'Shiro', 'akiru-sample', {
kigasumu:kigasumu,
});
指定可能にゃshigusaはこちらを参照ください
shigusaも参照ください
こんにゃ感じにゃฅ•ω•ฅ
let naderu = function(nuko) {
⁄⁄ mouseenterするとshigusaを変更
nuko.shigusa(['kirakirab', 'kyunkyunh']);
};
let kigsumu = function(nuko) {
⁄⁄ mouseleaveするとshigusaをデフォルトに戻す
nuko.shigusa();
};
Chigura.maneku('shiro', 'Shiro', 'katte-sample', {
naderu:naderu,
kigsumu:kigsumu,
});
一時的にせかせか/まったりさせたいときに便利にゃんよฅ•ω•ฅ
こんにゃ感じにゃฅ•ω•ฅ
let naderu = function(nuko) {
⁄⁄ mouseenterするとKi・Ma・Guレートを変更
nuko.kimagure(1);
};
let kigasumu = function(nuko) {
⁄⁄ mouseleaveするとKi・Ma・Guレートを戻す
nuko.kimagure();
};
Chigura.maneku('shiro', 'Shiro', 'kimagure-sample', {
naderu:naderu,
kigasumu:kigasumu,
});
innyaTextも参照ください
こんにゃ感じにゃฅ•ω•ฅ
let naderu = function(nuko) {
⁄⁄ mouseenterすると鳴く(文字列を与える例)
nuko.naku('すにゃ');
};
let jarasu = function(nuko) {
⁄⁄ clickすると鳴く(配列を与える例)
nuko.naku(['塚森にゃ', '長沢にゃ', '三ツ塚にゃ', '墓道にゃ', '大社にゃ', '牛沼にゃ', 'めいにゃ', '七石山病院にゃ']);
};
Chigura.maneku('shiro', 'Shiro', 'naku-sample', {
naderu:naderu,
jarasu:jarasu,
});