ソラマメブログ

  

Posted by at

2008年05月26日

新商品-アレンジコーヒー&ティー(コーヒーカップ)


新作カップを販売開始しました^^
今回のテーマはアレンジメント・・・ということで、アレンジコーヒーとアレンジティーが楽しめる兼用カップです。

●飲み物リスト
・コーヒー
・ミルクコーヒー
・カプチーノ
・キャラメルマキアート
・ストレートティー
・ミルクティー
・レモンティー
・ローズティー
・ホットミルク
・スチームドミルク
・マロウティー(ストレート)
・マルウティー(レモン)

予定ではホットチョコレートを入れようと思っていたんですけれど、変更してマロウティーを追加しました。
レモンを入れると色が変化します^^


豊島区メインショップで販売中です^^
デモがあるので実際に触って体験をして頂けます~。

基本的な使い方は前回のティーカップと同じです。
設置・使用につきまして詳細は続きをどうぞ~。
  続きを読む


Posted by 朔夜 at 23:35Comments(2)・・・食器、紅茶

2008年05月22日

LSLで日付の計算、日付の取得

こんにちは。
LSLのエディターで日本語がそのまま書き込めるということをつい先ほど知って、衝撃を受けている朔夜です。(情報に気づくの遅すぎですね;)
コードで変換する必要が無くなってたんですね~。日本語コメント打ち込むと、画面では□□□と出るので、日本語は使えないのだと思っていました。

・・・と、最初から馬鹿なことをやっておりますが^^;
色んな計算をしているうちに、ふと「LSLで日付や期限の計算ってどうするのかな?」と考えまして、実際に時間を計測しようと思ってみたんですけど・・・意外に関数が見つからなくて難航しました。(DateSirialとかBetweenとかDateDiffのような関数があると単純に考えていました;)

Second Life Wikiさんの「Date Library」にどうやら色々と書いてある様子というところまで突き止めて、けれど全て英語・・・!(英語は超苦手科目;)
片言翻訳しながら、以下、実験をした結果です~。

****↓のコードは、Date Library(http://wiki.secondlife.com/wiki/Date_Library)で公開されている内容です****

//日付yy/mm/ddから、日付の値(シリアル値と似たようなものだと思うので、以下シリアル値と表記)「g」を計算する。
integer gday(integer yy, integer mm, integer dd)
{
integer m = (mm + 9)%12; // mar=0, feb=11
integer y = yy - 1600 - m/10; // if Jan/Feb, year--
return y*365 + y/4 - y/100 + y/400 + (m*306 + 5)/10 + (dd - 1);
}

//本日の日付を取得する。
integer today()
{
string DateUTC = llGetDate();
integer year = (integer)llGetSubString(DateUTC, 0, 3);
integer month = (integer)llGetSubString(DateUTC, 5, 6);
integer day = (integer)llGetSubString(DateUTC, 8, 9);
return gday(year,month,day);//戻り値はgday関数を通して、シリアル値になる。
}

//シリアル値「d」の引数から、[ year, month, day]をリスト型で返す。
list sdate(integer d)
{
integer y = (10000*d + 14780)/3652425;
integer ddd = d - (y*365 + y/4 - y/100 + y/400);
if (ddd < 0) {
y--;
ddd = d - (y*365 + y/4 - y/100 + y/400);
}
integer mi = (52 + 100*ddd)/3060;
integer dd = ddd - (mi*306 + 5)/10 + 1;
return [
1600 + y + (mi + 2)/12,
(mi + 2)%12 + 1,
dd];
}

************************************************

日付、日数の計算を行うためには、まずは上記のようなユーザー関数をあらかじめ入れておく必要があるみたいです。

↓こんな例題も書かれていました。

************************************************
//二つの日付間の差をシリアル値で求める。
gday(y2,m2,d2) - gday(y1,m1,d1);

//n日後の日付を[ year, month, day]のリストで返す。
sdate(gday(y,m,d) + n)
************************************************

これでとりあえず日付は取得・計算できるみたいです~。
でも日本の場合は時差がありますから、そのあたりを計算に入れていかないといけませんよね。

そうすると、integer today() の中にある string DateUTC = llGetDate() の時点で、ちょっと手を加える必要が出てくるでしょうか・・・。
Second Life Wiki によりますと、
integer gIntDay = 86400; //-- 1 day in seconds
・・・ということで、1日の秒数は 86400 秒らしいです。

integer time = (integer)llGetGMTclock(); //現在の時間を取得(0時からの秒数)
integer JP_TIME = 9*3600; //時差(9時間分の秒数)
integer gIntDay = 86400; //1日の秒数

//時差を足して、秒数が1日を越えているかを判定
if(time+JP_TIME>gIntDay){
day = dai + 1;//日付が翌日になる
}

こんな計算をすると、日本時間の日付になるでしょうか。
まとめてみます~。

******************************************
//本日の日付を取得する。
integer today()
{
string DateUTC = llGetDate();
integer year = (integer)llGetSubString(DateUTC, 0, 3);
integer month = (integer)llGetSubString(DateUTC, 5, 6);
integer day = (integer)llGetSubString(DateUTC, 8, 9);

integer time = (integer)llGetGMTclock(); //現在の時間を取得(0時からの秒数)
integer jp_time = time + 9*3600; //時差(9時間分の秒数)
integer gIntDay = 86400; //1日の秒数

//時差を足して、秒数が1日を越えているかを判定
if(jp_time>gIntDay){
day = dai + 1;//日付が翌日になる
}

return gday(year,month,day);//戻り値はgday関数を通して、シリアル値になる。
}
******************************************
ううん、これで良いのでしょうか・・・。
もっと効率の良い方法がありましたら、誰か教えて下さい~っ;;

おまけ。
//今日の残り時間を計算(日本時間Ver)

string time(){
integer gIntDay = 86400; //1日の秒数
integer now = llGetGMTclock() + 9*3600;//現在時間
integer sec = gIntDay-now;//今日の残り時間(秒)

//secを時間文字列に変換
integer h = llFloor(sec/3600);//時間
sec = sec-h*3600;
integer m = llFloor(sec/60);//分
integer s = llFloor(sec%60);//秒

string time = "今日はあと" + (string)h + "時間" + (string)m + "分" + (string)s + "秒です。";
return(time);
}

↑の二つは、実働実験してないので、間違ってたらごめんなさい><  


Posted by 朔夜 at 13:06Comments(0)・・・雑記

2008年05月22日

手作り(?)マフィンでティータイム


1primマフィンつくってみました。プレーンとチョコチップの2種類です^^
週末発売予定の新作カップと一緒に出したいなぁと思っています。

現在、豊島区のメインショップでカップとマフィンの実物を展示中です~。
Coming soonということで、まだ飲むオブジェクトは組み込んでいないため閲覧専用ですが、色々な種類の飲物が切り替えて楽しめますので、よろしければ覗きにきてみて下さいませ^^  


Posted by 朔夜 at 02:01Comments(0)・・・制作雑記

2008年05月20日

新作予定のコーヒーカップ


こつこつ調整中です。
どうしても取っ手の形が落ち着かなかったので、取っ手もスカルプに変更しました。
そのお陰で1プリム少なくなりそうです~。

今回入る予定の飲み物は、
コーヒー/ミルクコーヒー/カプチーノ/キャラメルマキアート
ストレートティー/ミルクティー/レモンティー/ローズティー
ホットミルク/スチームドミルク/ホットチョコレート
・・・の11種類。

ミルクティー、ミルクコーヒーは、それぞれ紅茶とコーヒーを入れてからミルクを加えられるようになっています。(飲む時のメニューに「ミルクを入れる」ボタンが出ます)
くるくる混ざるアニメーション付きです^^

テクスチャの切り替えとか色変更のことについて色々と調べてましたら、どうやらテクスチャをスライド切り替えした方がSIMには優しい(?)らしいです。(本当かどうかは不明ですが;)
今回はアニメーションさせる都合で数回テクスチャを切り替えるのですが、はじめにllSetTextureで実行してみましたら表示が追いつかず灰色になりまして;
なので、先にテクスチャを読み込ませておく形にして、切り替えにllOffsetTextureを使用。
カップ水面は小さいのでテクスチャもあまり大きくしないで済みますし、思ったよりも表示に遅れは感じませんでした。
これだったら大丈夫っぽいです^^

週末までには販売開始したいなぁと思います~。  


Posted by 朔夜 at 23:59Comments(0)・・・制作雑記

2008年05月20日

コーヒー、紅茶、アレンジ色々


形だけ作って中々発売できてなかったカップですが、そろそろ完成しそう・・・な予感です。
前回は「紅茶!紅茶!!」という感じでほぼお茶一色(?)のラインナップでしたが、今回は多様な内容になりました。

スチームドミルクが好きなんですよ。
あのふわふわ~っとした感触がたまりません^^


あとはこれ。ハーブティーもやってみたかったんですよね。

まだまだカップのテクスチャとか、飲む方のオブジェクトの調整とか、作業が残っていますが・・・。近日発売できるように頑張っています~。(できればお菓子も・・・っ!)

現在はトッピングにtemp_rezを使用しているのですが(プリム数節約のため;)、機能を拡張してtemp_rezと通常rezの切り替えができるようにしたいなぁーと思っています^^  


Posted by 朔夜 at 00:34Comments(0)・・・制作雑記

2008年05月19日

思いついたことを次々とお試し中


お茶が飲めるとなると、次はお茶菓子が欲しくなり、ひっそりとティーパーティー用アイテムを開発中です。
出来るだけ低プリムにしたい、けれどtemp_rezは出来るだけ使いたくない、と葛藤を繰り返しています^^;

そんなことをやっているうちに、ふと思いついた機能があったので、なんとなく実験。

通常、食べ物を配布するメニュー看板をタッチすると直接アイテムを受け取れますよね。
一時的に食べ物をrezするタイプのものだと、今度はrezする核になるプリムを各場所に配置する形が多いです(実は↑で開発中のお菓子類はそのタイプなんですけど)

・・・で、「配付するメニュー看板がひとつで、けれど何箇所かに食べ物を配膳(rez)したい」と思って、作ってみました。

●設定中

まずはテーブルの各席を想定して、場所を記憶させます。
このあたりはもう少し操作しやすくしないとだめでしょうか^^;


設定が完了したら、後はメニュー看板をクリックして注文します。
・・・いまのところ紅茶しかないので、お茶を注文^^


あらかじめ登録していた場所にカップが出てきました。
席は複数登録できますので、たとえば・・・


手前から注文すれば、カップは手前の席に。


奥へ移動してから注文してみると、今度は、


奥にカップが出てきました。

こんな感じで、注文者の位置から一番近い場所に出現させるようになっています。
あとは同じ場所でたくさん注文したときにrezされないようにブロックしたりとか、大勢で一気に注文したときの注文者位置判定をどうすれば一番確実かなど、色々と過大は残りますが、何とか形になりそう・・・かも?

こんなもの作って、何の役に立つんでしょうって感じですけどね^^;
いずれ機会があったら中身のスクリプトについてもふれていきたいと思います~。  


Posted by 朔夜 at 16:21Comments(0)・・・制作雑記

2008年05月05日

セールのお知らせ(新作スキン販売開始しました)


ただいま新作スキンの発売記念セール開催中です。
■ギフトカード各種、20%OFF
■スキンをセットでお買い上げの方に、ギフトカード(お好きなスキン1枚)をプレゼント中

また、↓こちらの2点を、フリー配布しております。
■アイラッシュ(付け睫毛)・当店の標準体型シェイプ2種
■初心者向け「若葉マーク」スキン

セールは5/6(火)まで開催予定ですので、よろしければ豊島区メインショップまでおこし下さいませ。

【ギフトカード・システム導入について】
新作スキンの販売開始セールに合わせて、ギフトカードシステムを導入しました。
専用のギフトカードがギフト用ベンダー前で販売されていますので、購入してご利用下さい^^

使い方ですが、まずはギフトカードを装着。
次に、ギフト用ベンダーから好きなスキンを選びます。
そして看板をタッチすると、「これで良いですか?」とダイアログが出ますので、「Yes」をクリック。
スキンが送られてきますので、受け取って下さい^^

回数が残っている限り、同じように繰り返してベンダーから商品をゲットできます。

このギフトカードはtranse-OKなので、贈り物としてもご利用頂けます~。
通常のギフトとは違い、ベンダーから受け取るスキンはCopy-OKでNo-Transeです。(コピーできるのでフォルダごとの整頓がちょっぴり便利?)

今回グループGIFTで、上画像のスキンをプレゼントしています^^
頬のパールがアクセントです。いずれこのあたりもシリーズで出してみたいなぁと思っています~。

【追伸】
最近テレポート位置がSIMの中央に変更されたみたいで、ショップの側に飛べないことがあるかも知れません^^;
その場合は、真っ直ぐ北に進んで頂けますと、ショップに辿り付けるようになっています~。  


Posted by 朔夜 at 02:07Comments(0)・・・スキン、他

2008年05月04日

新作Skin-DoubleFaceSeries

お久しぶりです。Yukishiroです。
先日から少しずつ製作を進めていたスキンが完成しました。
という事でいよいよ今晩中にもお披露目です。



これから薄着になる季節、露出の機会も増えそうなボディには、特に力をいれて製作しました。
触りたくなる胸とお尻をコンセプトに、精緻な下着をつけた時、よりきれいに見えるようよりナチュラルな肌色を目指して作成しています。バンザイしてストレッチしても多分大丈夫。

同梱されるのは、スキンとシェイプ、付けまつげ。
シェイプは通常のスタイルのほかに、素足になるシーンを想定した、ヌード用シェイプが同梱されています。

ただいまコツコツ看板の設置中ですが、完成次第販売開始に出来そうです。
Sakuya開発のギフトカードシステムも同時稼動開始しますので、ギフト品としてもどうぞ(^^)  


Posted by 朔夜 at 21:45Comments(0)・・・制作雑記