約 1,488,823 件
https://w.atwiki.jp/anchorlegendscenario/pages/526.html
ログホラTRPG エルダーテイルの世界には娯楽が足りない! そう考えたあるひとりの〈冒険者〉が自分が大好きな映画をエルダーテイルで作ることにした。 その名も「ドラゴンで危機一髪」 冒険者がプレイヤーキラーを相手に活躍する映画らしいが、どこかで聞いたような名前なのは気のせいである! そして、その出演者として選ばれたのは、偶然にも大吉を引いたあなた達であった。 ログホライズンTRPG 「みんなで映画を作ろう!」 魂の翼持つ〈冒険者〉達よ、地平線の彼方に新たな記録を刻め! 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/anchorlegendscenario/pages/1013.html
新たに多くの艦娘が着任したこの鎮守府で,お祝い会を催すことになった。 さて,お祝い会に何をしよう? ゲーム大会もいいな,カラオケもいいな。 …でも,やっぱりみんなでおいしい料理を食べよう! …だったら,こういう場に合う料理って何だ? ちらし寿司! …そういうことで,ちらし寿司を作るために,あなた達は陸や海を駆け回るのであった。 艦これRPG「ちらし寿司を作ろう」 -「酢飯作りなら,この磯風に任せておけ」 「金剛お姉さまたちのために,気合!入れて!作ります!!」 …頼む!お前ら2人は作るな!犠牲が出るから!!
https://w.atwiki.jp/mizcremorne/pages/280.html
はじめに フローティングテキストllSetText関数 回転看板llTargetOmega関数 アニメーション看板llSetTextureAnim関数 地図看板llSetTouchText関数 llMapDestination関数 ランドマーク看板llGiveInventoryList関数 まとめ はじめに 第六回~第八回は初級スクリプトの最初の山場でした。 へヴィな内容が続きましたので、今回はちょっと息抜き的に、しかしながら実用的なスクリプトを作ってみたいと思います。 SLで店をやるという人は多いでしょう。 そして商品の販売用や、宣伝のために、看板を作りたいという人もいるかと思います。 綺麗なテクスチャさえ用意すれば、それなりの看板を作ることができますが、この記事は一応スクリプトの勉強ですのでw、スクリプトを使った動きのある看板に挑戦してみましょう。 照明スクリプトをクリアした人にとっては、何ら難しいところは無いスクリプトばかりです。 ちょっとしたスクリプトだけで、いろいろな看板が作れます。 小粒なスクリプトをいくつか書いてみようと思います。 フローティングテキスト Snapshot_121-s.jpg オブジェクトの上に文字を表示するスクリプトです。 あんまり大量にこれがあるとウットオシィのですが、超基本的なスクリプトですので紹介しておきます。 default { state_entry(){ llSetText("Welcome!", 0.0, 1.0, 0.0 , 1.0); } } このスクリプトはオブジェクトの上に「Welcome!」という文字を緑色で表示します。 ハロー・アバター並に簡単ですので、あんまり説明するところもないですが・・・一応。 llSetText関数 llSetText(string text, vector color, float alpha) color色のtextを透明度alphaでオブジェクトの上に表示する関数です。 透明度の値alphaは、0.0-1.0です。 0.0が完全に透明、1.0は完全に不透明です。 表示した文字を消すときは、 llSetText("", ZERO_VECTOR, 0.0); これで消えます。 回転看板 しばしば店の屋上に設置されたりしている、ぐるぐる回転する看板です。 vector axis = 0.0, 0.0, 1.0 ; float spinrate = 0.2; float gain = 1.0; default { state_entry(){ llTargetOmega(axis, spinrate, gain); } } 以上でZを軸としてぐるぐる回転するオブジェクトが作れます。 ポイントはllTargetOmega?()関数だけです(^^; llTargetOmega関数 llTargetOmega(vector axis, float spinrate, float gain) この関数はオブジェクトを、axisで示される軸の周りを、毎秒spinrateラジアンの速さで回転させます。 gainはとりあえず1.0の固定値で考えてかまいません。 物理的なオブジェクトを扱うようになるとgainの値が意味を持ってくるのですが、看板など、通常のオブジェクトの場合は1.0を使うのだという理解でOKです。 関数の使い方は特に問題ないでしょう。 ピンとこないのは、どんな数値を指定すると、どんな回転になるのかですね。 まずaxisですが、ここには基本的に「単位ベクトル」を指定します。 高校の数学あたりで出てくる、長さが1のベクトルのことですね。 なんのことやらサッパリという方は、お近くの博識な方にお尋ね下さい(^^; 軸が縦向きなら、横に回転します。 軸を横にしたら、縦回転になりますね。 axisはこの軸の向きを設定する値です。 上記のスクリプトでは、 0.0, 0.0, 1.0 を指定しています。 Z軸は縦方向、1.0ですので上向きです。 この軸の周囲を回転させると、左から右へ、上から見ると逆時計周りの回転になります。 axisを 0.0, 0.0, -1.0 にすると、相変わらず軸は縦方向ですが、下向きです。 このときの回転は、右から左、上から見ると時計回りになります。 1.0, 0.0, 0.0 や 0.0, 1.0, 0.0 などは、縦回転になります。 spinrateはラジアン/毎秒の回転速度です。 一回転(360度)=2πラジアンですので、π=約3.1415とすると、 spinrate 1回転に要する秒数 6.283 約1秒 3.142 約2秒 2.094 約3秒 1.570 約4秒 1.257 約5秒 0.628 約10秒 0.314 約20秒 0.209 約30秒 0.105 約60秒 設定の際の参考値です。 なお、llTargetOmega?()はSLのサーバーに対する負荷が最も小さい回転処理です。 サーバーはクライアントに対して回転の軸と速度のパラメータを送りつけるだけで、あとの回転は全てクライアント側で計算されるためです。 常に放置する看板のようなオブジェクトを回転させるには最適の手法だと言えるでしょう。 逆説的ですが、回転の処理をクライアント側で行うということは、人によって回転の状態が異なるということです。 同じ場所、同じ時間にAさんとBさんが居て、二人が一緒に回転する看板を見ていたとしても、その回転の角度が同じである保証はありません。 Aさんには40度回転して見えているタイミングに、Bさんには90度回転しているように見えるかもしれません。 ですので、厳密に回転角度をコントロールしたい場合にはllTargetOmega?()は向きません。 また、サーバーの負荷にはなりませんが、時として一番最初の「回せー」という指示がクライアントに届かず、一切回転して見えないというバグもあります。 余談です。 llTargetOmega?()はルートプリムで使ったときとチャイルドプリムで使ったときの動きが異なります。 ルートプリム(オブジェクトの親プリム)で使うと、オブジェクト全体が回ります。 チャイルドプリムで使うと、そのプリムだけが回転して見えます。 これを組み合わせて使うと面白い効果を得ることができますが、親子の軸を考慮して動かす必要があり、なかなかに複雑ですので、いずれ機会があるときにまた詳細に解説します。 アニメーション看板 看板のテクスチャをパラパラ漫画のようにアニメーションさせることができます。 アニメーション用のテクスチャ(アニメの各コマを並べてつなげた一枚のテクスチャ)を用意する必要があります。 テクスチャをアップロードし、アニメーションさせたいオブジェクトに貼り付けたら、以下のようなスクリプトで動き出します。 default { state_entry(){ llSetTextureAnim(ANIM_ON | LOOP, ALL_SIDES,4,4,0,0,4.0); } } 用意したテクスチャに応じて、パラメータは変える必要があります。 llSetTextureAnim関数 llSetTextureAnim(integer mode, integer side, integer x_frames, integer y_frames, float start, float length, float rate); 引数がいっぱいありますが、まあ、難しくはありません。 integer mode まず最初の引数modeですが、パラパラ漫画のようにアニメーションさせるには、ANIM_ONという値を設定します。 それだけだと一度だけしか再生されないので、LOOPという値も指定します。 ANIM_ONとLOOPを、|でつなぐことで、ANIM_ONでLOOPなモードになります。 「ANIM_ON, LOOP」ではありませんので注意しましょう。 ここには他に、 REVERSE・・・アニメを逆再生させる PING_PONG・・・最後まで再生したら逆再生し、先頭まで戻る などが指定できます。 例えば、パラパラアニメを逆回しで繰り返し再生するには、 ANIM_ON | LOOP | REVERSE のように指定します。 再生、逆再生、再生、逆再生・・・と繰り返したいときは、 ANIM_ON | LOOP | PING_PONG このようになります。 integer side primのどの面のテクスチャをアニメーションさせるかを指定します。 全面をアニメーションさせるときは「ALL_SIDES」という値を指定すればよいのですが、特定の面だけにしたい場合は以下のような値をセットします。 以下はあまり妙な形の看板は作らないに違いない(きっとそうだ、そうかもしれない)という独断に基づき、立方体の場合のみです。 なお立方体でも、穴を開けたりパスカットした場合は数値が違ってきますので注意して下さい! 面 数値 上面 0 -Y方向の面 1 +X方向の面 2 +Y方向の面 3 -X方向の面 4 下面 5 integer x_frames, integer y_frames アニメーションのコマの分割数です。 x_framesはテクスチャの横方向に何コマ並んでるか、y_framesは縦方向に何コマあるかです。 例で示したスクリプトでは、「4,4」にしてますので、横4コマ、縦4コマの合計16コマのアニメーションということですね。 実習する際には自分のテクスチャに合わせて数字を変えてください。 float start スタートのコマが何番目のコマなのかを指定します。 先頭は0コマ目です。 通常0ですよね・・・多分。 float length 何コマ目まで再生するかです。 0を指定すると全コマ再生になります。 float rate 再生スピードです。 一秒間に何コマアニメーションさせるかを指定します。 例えば4.0であれば、一秒間に4コマの速度で再生されます。 このllSetTextureAnim?()関数も、llTargetOmega?()関数と同様に、クライアント側で実行される処理です。 従ってサーバーの負荷は低めです。 また、見る人によって何コマ目が再生されているかは異なる可能性があります。 スクリプト自体は非常に簡単ですので、手軽でかつ低負荷に、目を引く看板を作ることができますが、おそらく一番手間なのはアニメーション用のテクスチャの準備でしょう。 Second Life Wiki JPのフォーラムにて、便利そうなツールが紹介されていましたので載せておきます。 GIFアニメをSLのパラパラアニメ用テクスチャに変換してくれるWebツールです。 SL anim creator 使い方: 1.お好みのGIFアニメを用意し、ソースファイルとして選択します。 2.秒間何コマ再生するのか数字を入力します(デフォルト8コマになっているようです) 3.「Prosess」ボタンを押します。 するとtgaイメージが作成され、ダウンロードできますので、それをSLにアップロードしhて使用します。 スクリプトのソースコードも自動的に作ってくれるという親切設計ですw またしても余談です。 llSetTextureAnim?()関数は、パラパラアニメ以外にもテクスチャを使ったアニメーションが可能です。 ROTATE・・・テクスチャを回転させるモード SCALE・・・テクスチャを拡大・縮小させるモード SMOOTH・・・テクスチャをスクロールさせるモード これらのモードを使う際には、startやlengthの引数の意味が異なってきます。 地図看板 タッチすると、お店の場所をMAP上に表示してくれるような看板です。 string simname="adder"; vector pos= 104.0, 210.0, 0.0 ; default { state_entry(){ llSetText("Touch to open map.", 0.0, 1.0, 0.0 , 1.0); llSetTouchText("map"); } touch_start(integer detected){ llMapDestination(simname, pos, ZERO_VECTOR); } } このスクリプトは私の店をMAP上に表示しますw 難しいところは特にないはずです。 初めての関数だけ説明しておきましょう。 llSetTouchText関数 llSetTouchText(string text) オブジェクトを右クリックしたときに表示される「touch」の項目を、指定した文字列に変更する関数です。 ここでは、「touch」の変わりに「map」が表示されるようにしています。 llMapDestination関数 llMapDestination(string sim_name, vector position, vector lookat) 指定したSIMの特定座標をMAP上で示す関数です。 引数が三つありますが、簡単です。 string sim_name 表示するSIM名です。 vector position 表示する座標です。 vector lookat この引数は現在のバージョンでは使われていません。 将来的には実装される予定らしいですが・・・。 名前からするとテレポートしたときの視線の方向(アバターの向き)でしょうか。 なおllMapDestination()関数を見て、 「おや?」 と思った人は鋭いですね。 何が「おや?」なのかと言うと、この関数には「誰に対してマップを提示するか」の引数が存在しない点です。 マップを表示する相手のUUIDを指定する引数あたりがあっても良さそうなものですよね。 それが無いので、 「これは一体誰に対してMAPを表示するのだろう・・・?」 と疑問を持った人もいることでしょう。 結論を言うと、この関数はアタッチメント・オブジェクトの中か、タッチイベントでしか使えません。 アタッチメントの場合は、MAPはアタッチしている人に対して表示されます。 タッチイベントの場合は、タッチした人に対して表示されます。 なぜこのような制限があるかというと、おそらくスパム対策でしょう。 UUIDでMAPを表示する相手を指定できるとすると、近くに来た人に片っ端からMAPを出すようなスクリプトが組めてしまいます。 そんなものがあったらウットオシイ以外の何者でもありませんね(^^; ランドマーク看板 地図看板と似ていますが、こちらはランドマークを配布する看板です。 MAPの表示は一箇所しかできませんので、複数お店を持っている人などはランドマークを渡すことで全ての店の位置を相手に伝えることができます。 あまりスマートなスクリプトではありませんが、こんな感じのコードで実現可能です。 list lmlist=[ "shop1", "shop2", "shop3" ]; default { state_entry(){ llSetText("Touch for getting a landmarks.", 0.0, 1.0, 0.0 , 1.0); llSetTouchText("landmarks"); } touch_start(integer detected){ llSetText("Please wait ...", 1.0, 0.0, 0.0 , 1.0); llGiveInventoryList(llDetectedKey(0), "My shop list", lmlist); llSetText("Touch for getting a landmarks.", 0.0, 1.0, 0.0 , 1.0); } } list型の変数lmlistには、渡したいランドマークの名前を羅列します。 ここに書いたランドマークはオブジェクトのコンテンツ(オブジェクト・インベントリ)の中に入っていなければなりません。 コンテンツにないものを書くとエラーになりますので注意して下さい。 ランドマークが増えた際には、コンテンツにランドマークを放り込むのと同時に、このlmlistに名前を追加する必要があります(このへんがスマートでないw)。 タッチイベントで処理されるllGiveInventoryList()関数は、コンテンツの中から複数のアイテムをアバターに渡す命令です。 llGiveInventoryList関数 llGiveInventoryList(key destination, string category, list inventory) key destination 渡す相手のUUIDです。 例示したスクリプトではllDetectedKey(0)を渡しています。 これはたびたび登場してますが「タッチした人のUUID」でしたね。 string category アイテムを渡したとき、ここに設定した名前のフォルダが相手のインベントリに作成されます。 例では「My shop list」という名前のフォルダが作られます。 Myって誰だよ・・・という突っ込みは大歓迎ですw 実際に使う際にはわかりやすい名前をつけましょう。 list inventory 渡すアイテムのリストです。 さきほども書きましたが、コンテンツに存在しないものがあるとエラーになります。 llGiveInventoryList()の前後でllSetText?()を使っているのは、処理に少々時間がかかるためです。 通常、llGiveInventoryList()は3秒かかります。 ですので、まずフローティングテキストを"Please wait ..."(ちょっち待ってね)と変更し、ランドマークを渡し終わったら、もとのテキストに戻しています。 まとめ 以上、5つのスクリプトを紹介しました。 これらは組み合わせて使うことももちろん可能です。 看板用ということで書きましたが、llSetText?()やllSetTouchText?()などは様々な用途に使える基本的な関数です。 また、llGiveInventoryList()はベンダーを作る際にも役に立ちます。 llTargetOmega?()やllSetTextureAnim?()は、アタッチメントに組み込んでも面白い効果が出せます。 工夫次第で使いどころがあると思いますので、ぜひ応用してみて下さい。 さて。 看板が出来たので、今度はアイテムを販売する仕組みについても見たいところです。 土日はお休みしますので次回は来週月曜日、ベンダーのスクリプトを作ってみることにしましょう。 ではまた来週~w 名前 コメント
https://w.atwiki.jp/vsaturn/pages/37.html
mainも関数だった! 今まで使っていた関数について 今回から少し深いところに入っていきます。 この項では関数について詳しく話そうと思います。 今までprintfやscanfなどのもともと用意されていた関数は使っていましたね。これらをライブラリ関数といいます。 しかし、すべての機能がライブラリ関数になっているわけではありません。関数を自分で作成していかなければなりません。 実はすでに今までのコーディングで関数を作成していたのですよ。それがmain関数です。 main関数について少し説明すると、C言語では1つmain関数がないとエラーになります。 また、コンピュータがmainを呼ぶことで処理が実行されます。 関数定義 関数はどのように定義するのか見てみましょう。 このような要素で構成されています。1つずつ見ていきましょう。 戻り値型(返却値型) 関数の処理が終了したときにこの関数が返す値の型を指定します。 関数名 関数を呼び出すときの名前 仮引数 関数呼び出し時に渡される。実引数を受け取るための変数を指定します。 関数の本体には実際の処理を記述します。それでは実際のソースコードを見てみましょう。 関数サンプル /* 関数の計算結果を表示させる */ #include stdio.h int func( int X ) { X *= 10; return X; } /* メイン関数 */ int main( void ) { int na;// 戻り値格納用 na = func( 5 ); /* 結果表示 */ printf( "%d\n", na ); return(0); } 今回はmainに加えて自作のfuncという関数を用意しました。 コメントにある通りfunc関数に数値を渡して計算結果を戻り値としてもらって来ています。 詳しい説明は後ほど図解で行います。結果は以下のように計算結果が表示されます。 実行結果 自作した関数もライブラリ関数と同じように呼び出して引数を与える形で使用します。 実際にどういう流れで実行されるのか図でご覧ください この図を番号順に見て行きましょう。まずfuncが呼び出され、5が実引数として関数に渡されます。 図に書いてある通り、仮引数のXに5が代入されているイメージだと理解しやすいです。 次に5に10を乗算するコードが実行されてXは50になります。関数内での実行を完了したのでXの50を戻り値として返ってきます。 その戻り値がmainのnaに格納され結果表示に進むという流れになります。 このように計算の公式等を関数化すると同じコードを何度も書くことなく使いまわせるので、積極的に関数化して行きましょう。 return文 mainにもfuncにも最後は必ず記述してあるreturnはどのような処理をしているか気になりませんか? これはreturn文と言って関数を終了し、その関数が呼び出された位置に戻ります。 return文 /* 戻り値がある場合 */ return 式; /* 戻り値がない場合 */ return; 書き方は2種類あり戻り値の有無で決まります。実は関数は必ずしも戻り値を返す必要はないんです。 ですので、戻り値が必要ない場合は式を省略することができるのです。 引数についての補足 今回作成したfunc関数では仮引数は1つでしたが、複数の仮引数を宣言することも可能です。 簡単に書き方の紹介をしておきます。複数の仮引数がある場合は実引数も同じ数だけ指定してくださいね。 例 /* 関数 */ int func( int X, int Y ) { return ( X + Y ); } /* 呼出し */ na = func( na, nb ); 次に実引数に関数呼び出しを書いた場合の動作についてです。 例 printf( "大きい方の値は%dです\n", maxof( na, nb ) ); 例として、maxofという2値を比較して大きい方を戻り値として返す関数をprintfの実引数として書いてみました。 実行される順序は、まずmaxofが呼ばれ実行されます。次にその戻り値がprintfで出力される流れになります。 この順序は他の関数でも同様です。 仮引数や戻り値がない関数の場合 仮引数や戻り値を必要としない関数を作成する場合はvoid型を指定します。 void型は型のない型と覚えてもらえればいいと思います。 この型を指定した場合は、戻り値として変数などに代入することができません。 例 void func( int A ) { printf( "%d\n", A ); return; } na = func( 100 ); /* 戻り値がないのでエラーになる */ 以上のことに頭に入れつつ、関数を組んで行きましょう。
https://w.atwiki.jp/ff14tamahiyo/pages/14.html
基本的なマナー・コミュニケーション方法に関しては、 こちらを一読すると良いかもしれません。 マクロでオリジナルエモートを作ろう! マクロとは 正式名は「ユーザーマクロ」です。 複数の行動(テキストコマンド)を登録し、1度の操作で全ての動作を実行できる機能のこと。 ◦例:「自分を強化 > 敵に必殺技(WS)」を1つのボタンで発動する ゲームを遊びやすくすることができます。 また、挑発や蘇生の際に、実行したことをPTチャットで知らせることもできます。 戦闘用のマクロについては、上級者向けで、 さまざまな用途に応じて自分で組み合わせていくことになります。 ここでは、コミュニケーションをとるためのマクロについてご紹介しましょう。 オリジナル感情表現マクロを作ろう! 画面右下のメインメニューから「マクロ管理」を選択します すると、こちらのウィンドウが開きます。 このウィンドウの右側にマクロを打ち込み、編集を行います。 たとえば /em は t に肩たたき券を渡した。 /handover motion 上記を設定・実行すると、 ログ表示 実行した人の名前 は ターゲットカーソルが合っていた対象 に肩たたき券を渡した。 →同時に「わたす」のエモートを実行 といった、独自のアイテムを渡したようなエモートを実行することができます。 ※/handover motion のようなモーションのコマンドパラメータは、エモートウィンドウ左下で確認することができます。 さまざまなエモートを作って、オリジナルの感情表現をしましょう!
https://w.atwiki.jp/wlomemo/pages/12.html
■レトロな浴槽を作ろう WonderlandOnlineでは、回復はリモコン使用や緊急時以外はお風呂を使用するのが一般的です ヒノキの風呂に必要な材料のホップ集めが序盤厳しいので、飛ばしてレトロな浴槽から作るのが主流なので、ここではレトロな浴槽を作るルートをまとめておきます Lv10までは町の宿屋NPCで無料でHP/SP回復出来ますが、Lv11を過ぎると宿屋は有料になるので、なるべくLv10までに作るのがオススメです レトロな浴槽を造るには、高温窯が必要になります 高温窯を作るには、 作業台→ヤシのボール・石刀→低温釜→加熱釜→高温窯 この6つの製造器具を作る必要があります レトロな浴槽製造までに必要な総材料:薪19、ラワンの丸太1、黒粘土4、白粘土9、灰粘土6、黄粘土7、頁岩1、鉄鉱1、ヤシ1、生ゴム2 ■ヤシのボール【作業台】━ヤシ*1 ■石刀【作業台】 ┣頁岩*1 ┗ラワンの丸太*1 ■低温窯【ヤシのボール】(薪:5=普通の丸太2、白粘土:4) ┣白粘土*4 ┗薪*5【石刀】━普通の木材*3【石刀】━普通の丸太*2 ■加熱炉【低温窯】(薪:5=普通の丸太2、鉄鉱:1、黒粘土:4、黄粘土:2) ┣黒粘土*4 ┣黄粘土*2 ┣鉄鉱*1 ┗薪*5【石刀】━普通の木材*3【石刀】━普通の丸太*2 ■高温窯【加熱炉】(薪:4=普通の丸太:1、黄粘土:5、灰粘土:6) ┣黄粘土*5 ┣灰粘土*6 ┗薪*4【石刀】━普通の木材*2【石刀】━普通の丸太*1 ■レトロな浴槽【高温窯】一定時間ごとにHP40/SP20を回復 ┣白粘土*5 ┣生ゴム*2 ┗薪*5【石刀】━━━━━普通の木材*3【石刀】━普通の丸太*2
https://w.atwiki.jp/ifrozenteacherss/pages/856.html
その1・教えて良いのか? ローゼン「っと、そう言う訳で。有栖学園の実態を知ってもらう為にHPを作ろうと思う。だから、蒼ちゃんに金ちゃん。パソコンに得意な生徒と一緒に作って~」 二人「分かりました。この学園の本当の「実態」を教えてよいんですね?射撃部は大量に武器を持っている事と・・・・・・・・・・・・他には」 ローゼン「・・・・・・・ごめん。やっぱ止めて。」 蒼星石「まぁーこの学園って、普段の常識を超えていますからね」 その2・いつもの生徒 ジュン「・・・・・・・・・って。また、僕かい!?」 蒼星石「仕方無いでしょー君が、一番暇そうだったんだし~」 ジュン「これでも、僕は忙しいんです!」 金糸雀「どんな?」 ジュン「通販したり・・・・・・・柏葉とデートしたり・・・・」 二人「十分暇だな!・・・・・・・・・っと。そう言う訳で、強制連行~」 ジュン「だからって、連れて行くなーーーーーー!!ぐぶっ!(蒼星石に殴られ、気絶)」 その3・HP完成~この3日間・・・・・・ある意味、地獄でした。by.ジュン 雛苺「ほぇ~ヒナたちが映っているのー」 真紅「なかなかのHPね。やるじゃない、3人とも」 蒼星石「でしょ~結構大変だったんだから~」 金糸雀「かしらー」 ジュン「(つーか。ほどんど、やったのは僕だし・・・・・・2人は口だけで、何もやらなかった癖に~)」 水銀燈「けど。もうちょっと、可愛い写真無かったの~?これじゃ、私。真紅よりブスじゃない~」 真紅「それ、私が元からブスって聞こえるじゃない!」 水銀燈「だって、そうでしょ~フフフフ~」 真紅「(ブチ)殺る!!」 水銀燈「やれるものなら、やってみなさぁい~」 激戦 蒼星石「あ~あ。またやちゃったよ~」 金糸雀「あっ、早速。掲示板の荒らしかしらー!」 蒼星石「ホントだぁ・・・・・えーっと。「蒼星石って奴。本当に女なの?男に見える~」「彼女たちのスリーサイズ、教えて~」 「俺とやらない?蒼星石って野郎以外~」・・・・・・・・・・。金糸雀。 確か、強力なウイルス持っていたよね・・・・・・今すぐ、こいつらのパソコンにウイルスをばら撒いて・・・・・・・・・・フフフフフ」(殺気満々) 金糸雀「りょ・・・・・・・・・了解かしら・・・・・・・・」 それから、都内で謎のウイルスが大量発生したらしい・・・・・・・それと、1週間でHPを閉鎖したと言う ー終了ー
https://w.atwiki.jp/gundamfamily/pages/4068.html
365 名前:通常の名無しさんの3倍 :2010/05/02(日) 07 47 40 ID ??? シュバルツ「御免!」 ロラン「はーい」パタパタ ドモン「シュバルツ? …あんたが玄関から入ってくるとは珍しいな」 シュバルツ「ふ、ドモンか。 ちゃんとした用向あってのことよ。 ロラン君、頼まれていた例のものだ」 ロラン「えっ、持ってきてくださったんですか? 連絡してくだされば此方から取りにいったのに…」 シュバルツ「ドモンが修行をサボっていないか、様子も見たかったのでね」 ドモン「ふん、サボっていたかどうか、直接確かめてみるか?」ポキパキ ロラン「ドモン兄さん! お客様に喧嘩を売ってどうするんですか!」 シュバルツ「ふはははは、備えを怠っていないのならそれでいい。 それでは、失礼しよう」 ロラン「ええっ! そんな、コレの代金とか、お茶も…」 シュバルツ「お構いなく。 御代は、私も御相伴に預かれればそれでいい」 ドモン「なんのことだ?」 ロラン「あはは、さすがはシュバルツさん、お見通しでしたか…」 シュバルツ「ということで、真に勝手ながら、材料もいくつか入れておいた。 是非足しにしてほしい。 では、是にて御免!」ザアッ! ドモン「…なんだったんだ、一体?」 ロラン「お願いしていた食材を、わざわざ届けてくださったんですよ」ヨイショ ドモン「重いものなら俺に任せろ。 で、食材って何を頼んだんだ?」 ロラン「ありがとうございます。 小豆を頼んだんですけど… うわ!国産の高級品ですよ!」 ドモン「この白いのはなんだ?」 ロラン「上新粉ですね、お米から作る粉ですけど… ああああ、これも高級品じゃないですか! 和三盆まで!」 ドモン「小豆? 米? 何を作るんだ?」 ロラン「柏餅ですよ! 毎年毎年、粒餡は嫌だ、漉し餡は駄目だ、 甘いの甘味が足りないだの、みんな好みがばらばらですからね。 今年は手作りで行こうかと思ったんですけど… うう、ここまでされてしまってはプレッシャーですねぇ…」 ドモン「そ、そうか…まぁ頑張ってくれ」 クリス「ロラーン、今年は柏餅どう…うわ、もう準備万端ね!」 ロラン「ええ。 やんごとなき理由により、今年はKIAIを入れていくことになりました」 ドモン「おおおお、ロランが燃えている!」 クリス「なるほどなるほど、それじゃ、助っ人も頑張りますか!」 アムロ「…GWに年頃の娘が隣の家の手伝いだと?」 シロー「…バーニィ、アルと遊ぶ約束してましたね、そういえば」 アムロ「おし、ちょっと〆て」つ☆ジャラッ シロー「ちょ、兄さん落ち着いてください! ドモン手を貸せーー!」
https://w.atwiki.jp/javanige/pages/31.html
レトロゲームを作ろう@cdog FCゲーム再現という企画にあやかり ゲームプログラミングに最適なHSP言語で、レトロ風なゲームを作っていきたいと思います。 JAVAではないのですが、いつかはJAVAで作り直せたらなぁ・・と思います。 このページでは、ゲームプログラミングの基礎的なアルゴリズムを勉強していきたいと思います。 更新は不定期になりそうですが、よろしくお願いします^^; 制作は配信の方でも進めていきたいと思います nicovideo_com エラー ( 正しいコミュニティ埋め込みタグURLを入力してください. ) By 白井@ChargemanDog Season1 ウィズ、メガテン風3Dダンジョン制作 その1 絶対座標と相対座標 絶対座標とは、ダンジョンマップ全体を定義した変数で これは、二次元配列によってあらわす。 相対座標とは、自分の視点を表示するための変数で こちらも、二次元配列であらわす。 ◆絶対座標 dim map,10,10 ←※10×10のマップ map(0,0) = 1,1,1,1,1,1,1,1,1,1 map(0,1) = 1,1,1,1,1,1,1,1,1,1 map(0,2) = 1,1,0,0,0,0,0,0,1,1 map(0,3) = 1,1,0,0,0,0,0,0,1,1 map(0,4) = 1,1,0,0,0,0,0,0,1,1 map(0,5) = 1,1,0,0,0,0,0,0,1,1 map(0,6) = 1,1,0,0,0,0,0,0,1,1 map(0,7) = 1,1,0,0,0,0,0,0,1,1 map(0,8) = 1,1,1,1,1,1,1,1,1,1 map(0,9) = 1,1,1,1,1,1,1,1,1,1 ※1は壁0は床という定義の場合 ◆相対座標 dim view,3,3 view(0,0) = map(px-1,py-2), map(px,py-2), map(px+1,py-2) view(0,1) = map(px-1,py-1), map(px,py-1), map(px+1,py-1) view(0,2) = map(px-1,py), map(px,py), map(px+1,py) ※この相対座標は、北(上方向)を向いてる時の例です ※pxとpyは、自分の現在位置を記録した変数です ◇総体座標の例 1 0 0 1 0 0 1 ↑ 0 矢印→プレイヤーの位置と向き ※この例では、自分のいる位置から前2マス 横1マスづつ見えるという設定です。 相対座標は、常に絶対座標を参照するため 絶対座標の四方は常に二重の壁に囲まれている必要がある。 そうしないと絶対座標の配列の外を参照されてしまい バグにつながってしまいます。 その2 3Dダンジョンの描画について このように表示させるとすると、自分の視点から最も奥の壁のさらに隅の壁を 描画する必要が出てくる・・・ つまり、相対座標の外の座標まで参照する必要がある ※ 0 0 0 ※ 0 0 0 0 ↑ 0 矢印→プレイヤーの位置と向き ※→新たに描画が必要な座標 新たに二つの変数を用意して、その変数に相対座標の奥の両端を代入するか・・・ 背景として処理して、適当にお茶を濁すか・・・ ちょっと悩みどころですね^^; 天からの声 名前 コメント 自由帳 ここは自由帳です。何か良いアイデアが浮かんだら書きます。 皆さんもリクエストやダメ出しなどご自由に書き込んでください^^ ↓この下から追加してね♥↓ 一番いいのを頼む。てかこんな機能あったのか、しらんかったわー。byほじ 訪問者数: - 人
https://w.atwiki.jp/bloac/pages/14.html
ステージを作ろう!! BlockActionの魅力はなんといってもステージを作れることです。ここでは作り方などの説明をします。 1.画面左下のCreate New Stageボタンを押す ステージ作成画面になります。 2.左上にあるブロックの中から使いたいものを選ぶ ブロックの性質などはBlock Actionとは?のブロック・役モノ紹介を見てください 3.選んだブロックを設置したい場所に置く 縦28×横30の何もない状態から空白を除いた18種類のブロックを配置していきます。 配置したブロックは左上の空白で消すことができます ストッパーブロックは配置しても見えませんが、左下のShowボタンを押せば置いた位置が表示され、再度Showボタンを押せば表示を消せます(押したままステージを投稿してもストッパーブロックの位置は表示されません)。 ステージを作る時は以下のことに気をつけてください 独りよがりなゲームは作らないようにしましょう。 見た目の美しいステージを作りましょう。やる気が湧きます。 適当に大量のブロックを配置しないこと!削除対象になります。 クリアの出来るものにしましょう。 オンラインに作品を上げるのですから、多少の批判は覚悟したほうがよいです。 4.左下のSAVEボタンを押す 実際にプレイするなどの最終確認をしたらこのボタンを押してください 5.ステージのタイトル・名前・コメント・パスワードを記入する 記入を省略した場合、それぞれ自動的にno title、no name、no commentと表示されます。 このときパスワードを省略してしまうと後から編集などが出来なくなります 6.submitボタンを押す これでnewステージのところに作成したステージが出れば、投稿は完了です まれにundefinedなどと表示されてステージが正常に投稿されたかどうか分からない時があります。 その時はブラウザの更新ボタンでリロードするなどして、自分のステージがnewステージに反映されているかどうか確かめてみてください。 またクリアできない、いい加減である、などとみなされたステージは管理人が削除することがあります。削除されたステージは復元することはできません。 パスワードの使い道 パスワードを設定したものの何処にどうやって使うのか分からない!などという方はこちらをご覧下さい。 1.パスワードを設定している自分のステージを選ぶ 2.画面下の文字が記入できる場所にパスワードを記入する その後その横にあるそれぞれのボタンを押すことによって以下のことが出来ます Editボタン-ステージの編集ができます Deleteボタン-ステージを消去することができます Clear Rankingボタン-ランキングの名前を消すことができます。