フワフワソが「ソラとピヨちゃん」や「宮本県」を作るブログ(フワフワソ・ラウンジnew!)

ラノベとテクノを愛するふわふわがノベルゲームを作っています。あと日常のことやイベントの告知なども。スクリプト関連の記事は自分用の備忘録です

買ってよかった!amazonの生活アイテムおすすめランキング

コミケお休みでブログに書くことがないのでアソシエイト記事を書きます

ふわふわ氏が「これはマジで買ってよかった!」と思う生活アイテムの紹介です

*ランキングの順番は適当です

 

買ってよかった5位

 fashyの湯たんぽ

ゴム製の湯たんぽです。湯たんぽって今はプラスチックとかじゃなくてゴムなんですね…あまりの便利さにビビりました。

冷え性の方などは冬場には湯たんぽ欠かせないと思いますが、机に向かいっぱなしで作業をする創作クラスタの皆さんも、冬場は腰や肩などに不調が出てくると思います。

そういうときにはこれ!当てておくとだいぶ良い感じです。

ゴムなので椅子と腰の間にはさんだり、肩に乗せたり、色々使えます。寝るときにコリの場所に当てるのもよいですね。

もちろん足を乗せてこたつ代わりにも使えます。

なお、ホントにヤバいときには整骨院に行かないとダメですね……

 

買ってよかった4位

マキタのコードレス掃除機

 吸い込み仕事率が32w。一般的なコード付き掃除機が300wなので、ミニ掃除機のちょっと立派なやつというスペックですが、使った印象はけっこう吸い込み強いです。

「コードレスだと掃除の大変さがなくなって、気づいたときに吸う習慣になって部屋がいつもきれいになる」とはよく言われますが、ちゃんとしたコードレス掃除機は重い!でかい!

このマキタのやつは軽くていいです。

バッテリも自分で交換できるし、大容量バッテリにも付け替え可能で、さすがの業務用という感じです。

なによりデザインがちょっとガンダムっぽいのが気に入ってます。

 

買ってよかった3位

フライパン エバークックα

テフロンが長持ちするフライパンです。

TLでフォロワーさんが紹介してたのを見て買ったのですが、マジで長持ちです。

テフロンのフライパンっていうと、ちょっと使ったらこびりつくようになって、そのうちハゲて捨てる、という感じだったのですが、エバークックはめっちゃ持ちます。

旧版の「エバークック」は一年保証だったのですが、新製品の「エバークックα」は2年保証。

自分はエバークックαが出てすぐに購入して、2年近く使ってますが、まったくこびりつきもテフロンのハゲもありません。驚異的ですね

 

買ってよかった2位

 boseノイズキャンセリングイヤホン

これは創作クラスタの必須アイテムと言っていいかも?しれません。

創作系のみなさんは夜型多い印象ありますが、理由として、「夜の方が静かで作業に集中できる」というのがあるとおもいます。

このノイズキャンセリングイヤホンは、昼間に夜のような静寂を作ることができます。

けっこう高価なので長らく購入を迷ってたんですが、完全に買ってよかったです。

どのくらい静かになるか?

音楽をかけなくても、ノイズキャンセリング機能だけで使えて耳栓代わりになります。

・雨の音、風の音、機械音、エンジン音、車や電車の走行音、その他人工的な音

これらはほとんど消えると言っていいです。

(サーというホワイトノイズ的なものはあります)

ノイズキャンセリングしながら外を歩くと、車の接近に気づかず、非常に危ないです。やらないほうがいいくらいです。

 

ただし安全上、人の声は通します。

でも、かなり抑えることができます。

選挙カー、廃品回収、冬場の糞うるさい灯油販売の声。

こういった拡声器の騒音が来るとイライラして作業ができなくなりますが、「早くいなくなれ~」と願っている時間が無駄です。こういうときにイヤホンを付けると、すっと騒音が遠のきます。

ノイズキャンセリングだけで完全に消えることはないですが、音楽や環境音をかければほぼ消えると言っていいかもしれません。

・図書館での迷惑な話声。

静けさを求めて図書館に行ったのに、迷惑なおしゃべりが始まる…「はやく終われ~」と思っている時間が無駄です。ノイズキャンセリングをすれば、まあ、作業に戻れるくらいには話し声が遠のきます。

波の音とかせせらぎの環境音でもかければ、だいたい聞こえなくなると言っていいと思います。

(イメージとしては、隣の席でのおしゃべりまでは難しいと思いますが、離れた席でのおしゃべりならイヤホンで対応できると思います)

 

 自分が買ったのはコード付きイヤホンですが、コードレスのものや、ヘッドホンのタイプもあります。

 イヤホンはインナーにする部分の付け替えが可能で、サイズが3種類付属しているので、どんな耳の人にも合いそうです。

また、自分が買ったコード付きのイヤホンには、apple device用と、sumsungなどandroid device用の2タイプあります。

メーカーに問い合わせて聞いたのですが、違いは、コードについてるリモコンが働くかどうかだそうです。(端子の位置が微妙に違うらしいです)

自分はapple用のやつを買って、androidに使ってます。

 

買ってよかった1位

よく考えずに記事を書いてきて、一位が余ったので食べ物でも

伊藤園 おーいお茶 抹茶入りさらさら緑茶 80g (チャック付き袋タイプ)

伊藤園 おーいお茶 抹茶入りさらさら緑茶 80g (チャック付き袋タイプ)

 

 お茶は身体によい!カテキン!ビタミン!などとよく言われますが、煎れるのが面倒なので粉末です。葉っぱごと採れて、なお身体によいです。 

 

 初めて食べたときはあまりのうまさに一か月後にもう2袋買って、食べ過ぎて飽きてしまいました。

冬場はクール便いらずで送料が安いので、買うならいまのうちかもしれません。

 

ゴハンスキー1 (SPA!コミックス)

ゴハンスキー1 (SPA!コミックス)

 

 ほたるいかの干物を食べるエピソードがあります

清野とおるさんの漫画は何読んでもおもしろいですね

 

ティラノスクリプトで小数点以下を扱う。四捨五入など

ダメージ計算などで 1*1.2 などの計算をした場合、1.2が表示されるのではなく、

浮動小数点のせいで1.2に近いすごい桁数の1.2000000~という小数点以下が表示されてしまいます。

ゲームで扱うには小数点以下を四捨五入なり切り捨てなりして、1.2などの分かりやすい桁数にしたいところです。

wikiなどをざっと拝見した感じでは、小数点以下を切り捨てして1などにする方法(javascriptのMath.floorを使う)はあるのですが、小数点以下を何桁か使って1.2や1.20などにする方法がよく分かりません。

 

javascriptを調べました。

 .toFixed()を使う方法。四捨五入して、()内の数で桁数をそろえます。

[eval exp="f.number = 17.2545"]
[iscript]
f.number = f.number.toFixed(1)
[endscript]

[emb exp=f.number]

この方法は、桁数が指定なので0が0.0などになります。 0を0にしたい場合は、以下のMath.roundを使います。

 

Math.roundを使う方法

四捨五入して、桁数をそろえます。 

[eval exp="f.number = 17.2545"]
[iscript]
f.number = Math.round(f.number * 10) / 10
[endscript]

[emb exp=f.number]

Math.round(f.number * 10) / 10のところをMath.round(f.number * 100) / 100にすると小数点以下の桁数が増えます。

Math.round(f.number)で1の位で四捨五入。

Math.round(f.number / 10) * 10で、10の位で四捨五入

 

その他。Math.ceilで切り上げ

[eval exp="f.number = 17.2545"]
[iscript]
f.number = Math.ceil(f.number * 10) / 10
[endscript]

[emb exp=f.number]

Math.floorで切り捨て

[eval exp="f.number = 17.2545"]
[iscript]
f.number = Math.floor(f.number * 10) / 10
[endscript]

[emb exp=f.number]

なお、自分はjavascriptは詳しくないので、この記事のスクリプトは正しいのかどうかは分かりません。

一応動きますが、完全に自分用の備忘録です。ご注意ください。

 

 

キーフレームアニメでイージングを自作する

RPGでよくあるダメージ表示をしたいなと思いました。

敵を殴るとダメージ数値が出てバウンドして消えるあれです。

まずキーフレームアニメでやろうと思いました。

kopacurve.blog.fc2.comこ・ぱんだ様のプラグインがとても便利なので、そういう動きがあるかなと思ったのですが、ないようです。

ソースを拝見すると改造OKと書いてありましたので、このプラグインをもとに改造させていただくことにしました。ありがとうございます。

作ったのがこちら。

[keyframe name="float_ability"]
[frame p=" 0%" y=" 0"]
[frame p="100%" y="-100"]
[endkeyframe]

 

[macro name="ability"]
[eval exp="mp.layer = '0'" cond="mp.layer == undefined"]
[eval exp="mp.time = 1500" cond="mp.time == undefined"]
[kanim name="&mp.name" layer="&mp.layer" keyframe="float_ability" easing="cubic-bezier(.38,1.37,.99,1.09)" time="&mp.time" count="1"]
[layopt layer="&mp.layer" visible="true"]
[endmacro]

キーフレーム名が float_ability

マクロ名がabilityです。

上記の設定をしてから、

[ptext layer=11 text="test" x=360 y=360 size=100 name="abilitypt" time=0 wait=false]

[ability layer=11 name="abilitypt" time=300]

このように記述すると、レイヤー11でabilityptという名前を付けたptextの文字が300ミリ秒でアニメします。

 

 ポイントはまずここ。

[frame p=" 0%" y=" 0"]
[frame p="100%" y="-100"]

キーフレームアニメの設定のところで、時間経過100%(この場合はマクロで設定した300ミリ秒)のところで、y方向に-100ピクセル移動、としておきます。とても単純です。

次に、バウンドしたりする複雑な動きは、マクロの方のeaseの設定でやります。

[kanim name="&mp.name" layer="&mp.layer" keyframe="float_ability" easing="cubic-bezier(.38,1.37,.99,1.09)" time="&mp.time" count="1"]

kanimにはeaseの設定があって、これで結構複雑な動きができると思いました。

こんな感じの↓

https://easings.net/ja

さっそくバウンドするようなイージングを使おうと思いました。

ところが、やってみてもうまくいきません。

よくよく見ると、ティラノのkanimには、基本的なイージングしか実装されてないようです。(kanimではなく、animのほうにはもっと種類があるのですが)

指定できる値としてease(開始時点と終了時点を滑らかに再生する) linear(一定の間隔で再生する)ease-in(開始時点をゆっくり再生する)ease-out(終了時点をゆっくり再生する)ease-in-out(開始時点と終了時点をゆっくり再生する)

困った・・。のですが、先を読むと、

 この他に、cubic-bezier関数を使って、イージングを独自に設定することも可能です

 というわけで、こちらのサイトを参考に、バウンドする動きを作ってみました。

cubic-bezier.com

その結果が easing="cubic-bezier(.38,1.37,.99,1.09)" です。

 

あとは、自動的に数字が消えるアニメを実装したいなと思います。

 

・バウンドと同時に透明から現れていく例

[keyframe name="float_ability"]
[frame p=" 0%" opacity=0]
[frame p="100%" y="-100" opacity=255]
[endkeyframe]

・バウンドと同時に透明から現れていく例(失敗例。バウンドと同時にならない)

[keyframe name="float_ability"]
[frame p=" 0%" opacity=0]

[frame p=" 25%" opacity=255]
[frame p="100%" y="-100" ]
[endkeyframe]

 

その他気づいたところ

・「バウンドして表示後に、自動的に消える」を一気にやるには、透明になる動きまで含めたcubic-bezier関数を作る必要があり、若干面倒

 ・kanimはデフォルトでアニメ終了を待たずに次の処理に進むので、アニメしながら本文を読み進めやボタン処理等ができる。

 animはアニメ終了待ちのためのタグ[wa]がある。

 ・[chara_new][chara_show][chara_mod]など、キャラ表示関連のタグは、name属性を一個しか指定できない。

キャラクターを以後操作するための名前を半角英数で指定します。このnameは他のタグを含めて必ずユニークでなければなりません

 つまり、これらのタグを使って表示させた画像は、全部同じ名前にしておかないと同時にアニメ操作できない。

imageやptextなどのタグでは、名前は複数登録できるので、

name="chara1,chara_all"

name="chara2,chara_all"

name="chara3,chara_all"

 などと登録しておいた3つの画像があるとき、"chara1"で一個だけアニメさせたり、"chara_all"で全部同時にアニメできた。

ところが[chara_new]関連のタグを使うと、名前が一個しか登録できないため、上記のような個別アニメと全体アニメの使い分けができないということになる。