components.jsのTransitionオブジェクト(続き)
前回のエントリ書いてから微妙にバージョンアップしてます。
組み込みのトランジションに加速度付きの移動とバウンドを追加してみました。
せっかくだから個々のトランジションに解説でも付けてみようかなと。
──あなたの心の琴線に触れるようなものは何もないです。かといって、他の何があるわけでもないですが。
前回のエントリ書いてから微妙にバージョンアップしてます。
組み込みのトランジションに加速度付きの移動とバウンドを追加してみました。
せっかくだから個々のトランジションに解説でも付けてみようかなと。
予約した~。こいつです。
http://www.hobbystock.jp/item/gallery/HBY-GCF-00000803
なんかもう、一目惚れだった。つか凄いのね、最近のフィギュアって。いや、最近のも昔のも全然知らないんだけど。今までに買った嫁はからくりサーカスのしろがね嬢が唯一だし……。
あの時は元ネタ自体にはまってたってのもあったんだけど、今回は元ネタ知らんのよね。^^;
ただ純粋に「このフィギュア」がきれいでかっこよかったから欲しくなった。
つっかよ? 顔の造形が半端ない。どの角度から見ても完っっっ璧やんこれ。
ちなみに、同じキャラを別の原型師の方が作ったのがこれ。
http://www.hobbystock.jp/item/gallery/HBY-GCF-00000851
ここまで違ってくるんですねえ……。髪の毛のボリュームも全然違う。後者は帽子を被ってるので一概には比較出来ないんでしょうけど。
でもKAYが予約したやつのが安いんだよなあ。^^;
こういうのって多分、サイズで値段が変わってくるんでしょうね。でもKAYは一万円とか言われても多分買ったと思う。
早く実物が見てみたいっ。
珍しくKAGネタ。
かなり需要のある内容だと思うし、それでなくてもKAG周りは色んなサイトでしゃぶりつくされてると思うんで、探せば同じ内容のTIPSなんか簡単に見つかるのかも知れませんが……一応、俺様用メモという事で。^^;
つーわけで、KAGで©や♡などの特殊な文字を表示させる方法です。こんな感じ。
ひぐらしのなく[ch text="&'\\x2661'"]頃に[r] ぶっちゃけJASRA[emb exp="'\\xa9'"]って、法律に守られてる分893より性質悪いよね。
@chと@embのどちらでも可ですが、個人的には@embの方が冗長さが少なくてスマートかなと思います。
内側のアポストロフィまでがTJS2側のリテラルとして解釈されて、その結果が返されるという感じですね。
components.jsでも紹介しようかなと。
なんつーか、結構前から使ってるんですが、解説とかすんのめんどくさくてずっと放置してました。
一応これは、prototype.jsのような、javascriptのライブラリ(と言っていいのか?)です。
prototype.jsはその名のとおり、組み込みのオブジェクトを汚しますが、components.jsは組み込みオブジェクトには一切手を付けないようにしてあります。なんか、頻繁に使いそうな関数とかはとりあえずグローバルに登録しとけ的な。
何分、勉強しながらの制作なので、ぶっちゃけ作りは粗いです。で、まだまだ開発途中です。なんかjavascriptで色々ちょこちょこやってる時に、関数やらオブジェクトやらが必要になりそうになったら更新していく、というスタンスです。めっちゃ自分用です。
そもそも、prototype.jsがいいらしいと聞きつつも、使い方を覚えるのがしんどいというのが出発点ですからっ。
でまあ、やっぱ1から解説すんのはめんどくさいので、とりあえずこいつのキモであるTransitionオブジェクトの触りの部分だけ。
そうなんだよなあ……そもそも、HTMLの動的書き換えの為に作ったのに、自分のサイトではほとんど活かされてない……。orz
まあいいや。
その後、色々試してたんですが、TJS2のArray.assignメソッドってオブジェクト型ならなんでも食っちゃえるみたいですね。
つーわけで、さらに改良してみました。
KAYはよくjavascriptとかで
a == 1 && (b = 2); //もしaが1ならbに2を代入
みたいな事をやるんですが、これを吉里吉里でやるとこんな警告が出るんですねえ。
05:51:48 警告: 論理値が求められている場所で = 演算子が使用されています(== 演算子の間違いですか?代入した上でゼロと値を比較したい場合は、(A=B) != 0 の形式を使うことをお勧めします) at event_dispatcher.tjs line 70
まあ、スクリプトの動作に影響は無い(?)みたいですが……。
普通にif文使えば事足りる話だし、あんまり変な書き方すなという事ですかね。^^;
前回のエントリで書いたforeachですが、ちょっと意図したとおりには動かないみたいですねー。
クロージャが生きてると思ったのは、単にグローバルのメンバを参照してただけみたいです……。
普段javascriptばかり書いてるので、もうすっかりこういうもんだと思ってました。^^;
てなわけで、少々不恰好ですが、やはり明示的に変数を渡す仕様に変えてみました。
TJS2では、javascriptのfor文やPHPのforeach文のような、連想配列を列挙していく構文が無いので、辞書配列(連想配列)の全てのメンバに対して処理を行いたい時にちょい面倒です。
唯一の方法として、Arrayクラスのassignメソッドを使えばキーと値が交互に出てくる配列が得られます。
で、これを利用して簡単なforeach関数を作ってみました。