taskerでホーム画面にランダム表示
【こちらは前サイトからの移植記事になります。】
taskerのjavascriptを使って、ホーム画面にランダムで好きな文章を表示するためのメモ。
使いどころとしては、背景画像を好きなキャラ、好きな芸能人にして何かセリフを言ってもらうなど。
今日の目標
指定した文章をランダムでホーム画面に表示させる。
用意するもの
- 表示させたい言葉
- tasker
- KLWPやZooper
- 人によってはJSファイル
jsファイル作った方が後から編集しやすいかなーと思う。スマホからでも編集ごりごり頑張れるって人は直接入力してもいいと思う。
javascript
ランダムといえばjs!(?)
変数名はRandom Love Messageでrlmにした。いまだに変数名で悩む。
1 2 3 4 5 6 7 8 9 |
var rlm = [ {text:'一つ目'}, {text:'二つ目'}, {text:'三つ目'} //増やす場合は{}の後のコンマを忘れずに ] //ランダムにする var i = Math.floor(Math.random() * rlm.length); //変数をセット setGlobal('RLM', rlm[i]['text']); |
これをjsファイルにして保存し呼び出すか、TASKのJavaScriptletに直接コードを書き込む。
最後の行で、Taskerに「%RLM」ていう変数を渡す。変数にはrlm[0]~rlm[2]の文章が入る。
表示!
Taskerのプロファイルで何分ごとに変数を渡すか設定する。
Taskではのプラグインから、「%RLM」変数をKLWPやZooperに渡す。
KLWPでの表示
1 |
$br(tasker,[taskerで決めた変数])$ |
jsの中で改行タグ<br>を使って改行している場合は下記のように $tc(html, [テキスト])$をかませてあげます。
1 |
$tc(html,br(tasker,[taskerで決めた変数]))$ |
複数一気に指定
複数の変数を一気に指定したい。
例えば、一人の子に複数のセリフを言わせるなら上のjsでいいのですが、ソシャゲで5人パーティーとかだったら5人がランダムでゲームトップに出たりするあれを再現したい場合。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
var rlm = [ { text:'一つ目', name:'名前1', img:'xxx1.jpg' }, { text:'二つ目', name:'名前2', img:'xxx2.jpg' }, { text:'三つ目', name:'名前3', img:'xxx3.jpg' } //増やす場合は{}の後のコンマを忘れずに ] //ランダムにする var i = Math.floor(Math.random() * rlm.length); //変数をセット setGlobal('RLM', rlm[i]['text']); setGlobal('RLNAME', rlm[i]['name']); setGlobal('RLIMG', rlm[i]['img']); |
一つの{}内に複数指定できます。それぞれの変数がそれぞれKLWPに渡り、taskerのプロファイルで設定した条件でランダムに切り替わります。