BlackSheep-LSL@Wiki内検索 / 「object_rez!」で検索した結果

検索 :
  • llRezObject
    llRezObject llRezObject(string inventory, vector pos, vector vel, rotation rot, integer param) 引数inventoryで指定した名前のオブジェクトをrezする。 オブジェクトはコンテンツ内になければならない。 コンテンツ内に無いオブジェクトをrezしようとすると、 Couldn t find object XXXX というエラーが発生する。 また、rez不可能なアイテム(テクスチャとかサウンドなど)を指定すると、 Unable to create requested object. Object is missing from database. と叱られるんだそうだ(未確認)。 rezする位置は引数posで指定するが、posはワールド座標なので注意すること...
  • rez!
    はじめに rezするllRezObject rezされるon_rez?(integer param) temp rezスクリプト 今回のポイント はじめに 初級者向けに説明すべきことはもはやほとんど残っていません(^^; もちろん、lslに関してはまだまだ膨大な機能があり、触れていない部分は多いのですが、あくまでも「初級」ということであれば、残っているのは今回扱うrezを含めて2、3の項目くらいかと思います。 ちなみに今まで一切触れてこなかった機能として、物理系のスクリプトがあります。 物理系のスクリプトとは、SL内の物理的なオブジェクトを扱うための関数群のことです。 例えば加速させたり、重力を無くしたり、コマのように回転する力を加えたりできるのですが、これらの関数についてはスクリプトの知識というよりはSL内物理学の知識が必要になってきますので、初級者向けの対象外と...
  • リファレンス(イベント)
    ..._target() object_rez!? 他のオブジェクトをrez!し終えたとき(参考)? object_rez!(key id) on_rez!? オブジェクトがrez!されたとき(参考)? on_rez!(integer start_param) remote_data? XML-RPC通信が発生したとき remote_data(integer event_type, key channel, key message_id, string sender,integer idata, string sdata) run_time_permissions? パーミッション要求に返答があったとき(参考) run_time_permissions(integer perm) sensor? センサーが探知したとき(参考) sensor(integer num_detecte...
  • llPushObject
    llPushObject llPushObject(key id, vector impulse, vector angular_impulse, integer local) 引数idのUUIDで示されるオブジェクトまたはアバターを、impulse、angular_impulseに指定した強さでプッシュする。 impulseは直線方向に働く力、angular_impulseは回転を与える力になる。 引数localがTRUEだった場合、impulse、angular_impulseの数値はローカル座標系に対する向きと解釈される。 この関数はllPushObjectが"restricted"に設定されている土地上ではオーナーにのみ有効である。 ...
  • llGetObjectName
    llGetObjectName string llGetObjectName() オブジェクトまたはprimの名前を返す。 primの名前を返すのは、子primにおいて使用された場合である。 ルートprimで使用された場合はオブジェクト名を返す。 オブジェクトの名前をスクリプトから変更するにはllSetObjectName?関数を使う。 名前 コメント
  • llGetObjectDesc
    llGetObjectDesc string llGetObjectDesc() オブジェクトまたはprimの説明(ディスクリプション)を返す。 ディスクリプションとはbuild画面のprim名を編集する欄の下にある説明欄の内容である。 この関数はスクリプトが含まれているprimのディスクリプションを返す。 スクリプトがルートprimに入っている場合はオブジェクトのディスクリプションを返す。 ディスクリプションをスクリプトから書き換えるにはllSetObjectDesc?関数を使用する。 このGetObjectDesc();とllSetObjectDescですが、意外に強力な使い方が出来ます。…という言うのもスクリプトがリセットされても内容を保持しているからです。スクリプトの内部変数を保存する保存エリアとして非常に貴重です。しかし、残念なことに不具合が...
  • llGetObjectMass
    llGetObjectMass float llGetObjectMass(key id) idに指定されたUUIDのオブジェクトまたはアバターの質量を得る。 同一SIM内に存在する対象のみ有効。 SIM内に存在しないUUIDを指定した場合は0.0が返る。 自分自身の質量を調べるにはllGetMass関数を使う。 名前 コメント
  • llGetParcelFlags
    llGetParcelFlags integer llGetParcelFlags(vector pos) posで示される位置の土地の設定内容を得る。 設定内容とは「飛行可」「プッシュ可」等の土地ごとに設定されているルールのことを指す。 戻り値は以下の値を含むビットフィールドである。 定数名 値(16進数) 値(10進数) 説明 PARCEL_FLAG_ALLOW_FLY 0x1 1 飛行許可 PARCEL_FLAG_ALLOW_SCRIPTS 0x2 2 スクリプト許可 PARCEL_FLAG_ALLOW_LANDMARK 0x8 8 ランドマーク作成許可 PARCEL_FLAG_ALLOW_TERRAFORM 0x10 16 土地編集許可 PARCEL_FLAG_ALLOW_DAMAGE 0x20 32 ダメージ有効 PARC...
  • llRezAtRoot
    llRezAtRoot llRezAtRoot(string inventory, vector pos, vector vel, rotation rot, integer param) 引数inventoryに指定したオブジェクトをrezする。 引数posで指定する位置が、オブジェクトのルートプリムのグローバル座標を意味する以外はllRezObject関数と同じ。 詳細はllRezObject関数を参照。 名前 コメント
  • 制御系
    制御系 パーミッション 関数・イベント名 区分 概要 定義 run_time_permissions イベント パーミッション要求に返答があったとき[参考]初級lsl-11 run_time_permissions(integer perm) llGetPermissions 関数 スクリプトのパーミッション情報を知る integer llGetPermissions() llGetPermissionsKey 関数 スクリプトの保持しているパーミッション対象者のUUIDを得る[参考]初級lsl-13 key llGetPermissionsKey() llRequestPermissions 関数 パーミッションを要求する[参考]初級lsl-11 llRequestPermissions(key agent, integer perm) コントロール 関数・イベント名 区...
  • llGetObjectPrimCount
    llGetObjectPrimCount integer llGetObjectPrimCount(key id) idに指定したUUIDのオブジェクトのprim数を返す。 調査対象のオブジェクトは同一SIM内になければならない。 名前 コメント
  • llGetObjectPermMask
    llGetObjectPermMask integer llGetObjectPermMask(integer mask) オブジェクトの権限を取得する。 引数maskには調べたい権限の対象者を指定する。 定数 値 説明 MASK_BASE 0 基本(現在のオーナーの権限に等しい) MASK_OWNER 1 現在のオーナーの権限 MASK_GROUP 2 グループの権限 MASK_EVERYONE 3 その他の人々の権限 MASK_NEXT 4 次のオーナーの権限 戻り値はビットフィールドになっているので、以下の定数と&演算を行って権限をチェックする。 定数 値(16進数) 値(整数値) 説明 PERM_ALL 0x7FFFFFFF 2147483647 Move/Modify/Copy/Transfer(フルパーミッション) P...
  • llGetStartParameter
    llGetStartParameter integer llGetStartParameter() スクリプトのスタートパラメータを返す。 スタートパラメータとはllRezObject関数やllRemoteLoadScriptPin関数で指定された整数値のことである。 on_rez?イベントに渡される引数と同値。 通常の方法で(単純に保存した、インベントリからオブジェクトにドロップした等)スクリプトが開始されたときにはスタートパラメータはゼロである。 また、llRezObject関数などでスタートパラメータが指定されていた場合でも、スクリプトがリセットされるとスタートパラメータはゼロに戻る。 名前 ...
  • llList2ListStrided
    llList2ListStrided list llList2ListStrided(list src, integer start, integer end, integer stride) リストsrcのstart番目の要素からend番目の要素に関して、stride個ごとに要素を抜き出した別のリストを返す。 ストライダーとは馳夫のことであるが、ここでは意識しなくて良い。 しかしながら、気になる方のために簡単に説明しておくと、 「馳夫」→「大股でスタスタ歩く」→「階段とかも何段か飛ばしで登る」→「リストの要素を何個か飛ばしにする」 こんなイメージ。 一定間隔でリストを抜き出すメリットは、リスト上のデータ管理を以下のように行うことが可能になるからだ。 [key1, value1, key2, value2, key3, value3....] 時々見かけ...
  • llGetRegionFlags
    llGetRegionFlags integer llGetRegionFlags() SIMの設定内容を得る。 設定内容とは「太陽の位置固定」とか「サンドボックス」等のSIMごとに設定されているルールのことを指す。 戻り値は以下の値を含むビットフィールドである。 定数名 値(16進数) 値(10進数) 説明 REGION_FLAG_ALLOW_DAMAGE 0x1 1 ダメージ有効 REGION_FLAG_FIXED_SUN 0x10 16 太陽の位置固定 REGION_FLAG_BLOCK_TERRAFORM 0x40 64 地形編集不可 REGION_FLAG_SANDBOX 0x100 256 サンドボックス REGION_FLAG_DISABLE_COLLISIONS 0x1000 4096 衝突判定無効 REGION_F...
  • アバター/オブジェクト系
    アバター/オブジェクト系 アバター 関数・イベント名 区分 概要 定義 llGetAgentInfo 関数 指定アバターの状態を得る(飛行・AWAYなどの動作及びアタッチメントの有無等) integer llGetAgentInfo(key id) llGetAgentSize 関数 指定アバターのサイズを得る vector llGetAgentSize(key id) llPointAt 関数 現在動作せず llPointAt(vector pos) llRequestAgentData 関数 アバターデータの取得を要求する key llRequestAgentData(key id, integer data) llStopPointAt 関数 現在動作せず llStopPointAt() グループ 関数・イベント名 区分 概要 定義 llDetectedGroup 関数...
  • カメラ制御
    はじめに カメラコントロールllSetCameraEyeOffset(vector offset); llSetCameraAtOffset(vector offset); 定点カメラスクリプト 今回のポイント はじめに 最後に衝突について説明して初級スクリプト講座を終えようと思っていたのですが、最近、カメラのコントロールが意外に面白い効果を出せることに気づいたので、今回はカメラの制御について書きたいと思います。 SLで言うところのカメラとは、「視点」のことです。 通常、SLの視点はユーザーが自由に動かすことができます。 ALTを押しながらアバターを左クリックすると、そのアバターに注目したりもできますね。 結構自由なカメラコントロールが許されていて、私のように趣味でムービーを作る者にとっては重宝しています。 スクリプトからカメラをコントロールする方法も用意さ...
  • リファレンス(機能別)
    関数 関数アバター/オブジェクト系アバター グループ オブジェクト UUID リンク イベント系タッチ アタッチ シット 衝突 センサー デテクト インターフェース系UI チャット 取引 制御系パーミッション コントロール カメラ REZ コンテンツ スクリプト 属性系面 テクスチャ 色 透明度 特殊効果系アニメーション 音 ビデオ パーティクル ビークル データ系数学 文字列 リスト 時間 データ 暗号化 土地系BAN 土地 天候 地面 物理3D系位置 回転 物理 外部機能系Email HTTP XML-RPC アバター/オブジェクト系 アバター llGetAgentInfo 指定アバターの状態を得る(飛行・AWAYなどの動作及びアタッチメントの有無等) integer llGetAgentInfo(key id) llGetAgentSize 指定アバターのサイズを得る v...
  • リファレンス(名前順)
    A llAbs integer型の絶対値を得る integer llAbs(integer val) llAcos アークコサインを得る float llAcos(float val) llAddToLandBanList 土地からアバターをBANする llAddToLandBanList(key agent, float hours) llAddToLandPassList 土地の通行許可をアバターに与える llAddToLandPassList(key agent, float hours) llAdjustSoundVolume サウンドのボリュームを調整する llAdjustSoundVolume(float volume) llAllowInventoryDrop インベントリへのドロップを許可(あるいは非許可に)する llAllowInventoryDrop(inte...
  • 基礎知識/関数とは?
    関数 一般的に関数と言うと、 y = ax + b こんなのを思い出すかと思います。 中学校あたりの数学で出てくる「一次関数」というヤツですね。 これ、要するにxの値が変わると、それに関連してyの値も変わることから、「関数」と言われるんですね。 この数学用語を英語で言うと「function(ファンクション)」です。 ファンクションの意味を『新英和中辞典 第6版 (研究社)』で調べてみると、 1 機能,働き,作用,目的 2-a 職務,職能,職分,役目 b 【文法】 機能 3-a 儀式,行事; 祭典,祝典 b 《口語》 (規模の大きい)社交的会合,宴会 4-a 他のものに関連して変化するもの 《性質・事実など》, 相関関係 b 【数】 関数 こんなんが出てくるわけです。 最近のプログラムで“ファンクション”と言うと...
  • 物理3D系
    物理3D系 位置 関数・イベント名 区分 概要 定義 at_target イベント オブジェクトが到達目標地点に達したとき at_target(integer tnum, vector targetpos, vector ourpos) moving_end イベント 移動が終了したとき[参考]初級lsl-22 moving_end() moving_start イベント 移動が開始されたとき[参考]初級lsl-22 moving_start() not_at_target イベント オブジェクトが到達目標地点に達していないとき not_at_target() llDetectedPos 関数 検出されたアバター/オブジェクトの位置を得る[参考]初級lsl-20 vector llDetectedPos(integer number) llEdgeOfWorld 関数 ...
  • experiment/eventque
    イベントの同時発生限度数を調べました。 キューは64個までのイベントを溜め込むことが可能で、それ以上のイベントは無視されることの検証です。 以下のようにしてstate_entryイベントから100回のリンクメッセージを送信し、実際に処理されたリンクメッセージイベントの数をカウントしてみました。 // イベントキューリミット測定LSL integer event_call=0; // リンクメッセージのコール数 integer counter=0; // 実際に処理されたリンクメッセージ数 default { state_entry(){ integer i; integer j; llOwnerSay("Sleep start, please wait."); for (i = 0;i 10;i++){ // 1...
  • 実験・研究/イベントキュー
    イベントの同時発生限度数を調べました。 キューは64個までのイベントを溜め込むことが可能で、それ以上のイベントは無視されることの検証です。 以下のようにしてstate_entryイベントから100回のリンクメッセージを送信し、実際に処理されたリンクメッセージイベントの数をカウントしてみました。 // イベントキューリミット測定LSL integer event_call=0; // リンクメッセージのコール数 integer counter=0; // 実際に処理されたリンクメッセージ数 default { state_entry(){ integer i; integer j; llOwnerSay("Sleep start, please wait."); for (i = 0;i 10;i++){ // 1...
  • llHTTPRequest
    llHTTPRequest key llHTTPRequest(string url, list parameters, string body) 引数urlのアドレスに対してparametersとbodyを使ってHTTPリクエストを送る。 いわゆるWeb連携を行うための関数である。 urlに指定するのは、Webブラウザでお馴染みの、"http //"で始まるURLアドレスである。 parametersには以下のようなキーと値のセットをリストとして指定する。 [キー1, 値1, キー2, 値2...] 必要な数だけキーと値のセットを繰り返す。 指定できるキーは以下の通り。 キー キーの値 値の型 値の初期値 説明 HTTP_METHOD 0 string "GET" "GET&qu...
  • LSLで日本語を使う
    はじめに listenによる入力 URLエスケープの使用 その他の方法 はじめに 2007年4月現在、スクリプトやノートカードの日本語対応は十分とは言えません。 スクリプトのコード内やノートカードに日本語を書くと化けてしまい、llSayで発言させたり、llSetTextで表示したりすることができません。 しかしながら、日本人街などにおいては日本語を使ったメッセージを表示させたいという要望はしばしばあり、苦労している方もいらっしゃるのではないでしょうか。 スクリプトで日本語を扱う方法はいくつかありますが、基本的なものを紹介しておきます。 listenによる入力 直接スクリプトエディタに入力すると化けてしまう日本語ですが、実はlistenで正しく入力することができます。 以下のような単純なエコースクリプトで試してみて下さい。 01 default { 0...
  • llRemoteLoadScriptPin
    llRemoteLoadScriptPin llRemoteLoadScriptPin(key target, string name, integer pin, integer running, integer start_param) 引数targetで指定されるUUIDのオブジェクトに対し、引数nameのスクリプトをリモートロードする。 リモートロードは引数pinで識別され、引数runningにはリモートロード後のスクリプトの有効/無効状態を指定する。 また、引数start_paramの値はリモートロード後のスクリプトからllGetStartParameter関数で取得できる。 引数targetで指定されるUUIDのオブジェクトは、リモートロード元のオブジェクトと同一SIM上になければならない。 引数pinはリモートロードのセキュリティ確保のために用意さ...
  • llDetectedType
    llDetectedType integer llDetectedType(integer number) 検知対象の種別(アバター/オブジェクト/スクリプトの有無等)を返す。 llDetectedTypeはデテクト系の関数の一つである。 デテクト系関数についてはllDetectedKeyの説明もしくは初級スクリプト第二十回「センサーを使おう」のセンサーイベントについての説明を参照のこと。 llDetectedTypeの戻り値はビットフィールドになっている。 ビットフィールドとは、いくつかの値の組み合わせであり、フィールド内の特定の値がONかOFFかは 演算によって判別する。 llDetectedType(0) AGENT → フィールド"AGENT"がONならTRUE、OFFならFALSE llDetectedType(...
  • 外部機能系
    外部機能系 Email 関数・イベント名 区分 概要 定義 email イベント Eメールのデータを受信したとき[参考]Emailの送受信 email(string time, string address, string subj, string message, integer num_left) llEmail 関数 メール(email)を送る[参考]Emailの送受信 llEmail(string address, string subject, string message) llGetNextEmail 関数 次のメールを得る[参考]Emailの送受信 llGetNextEmail(string address, string subject) HTTP 関数・イベント名 区分 概要 定義 http_response イベント HTTPレスポンスを受信したと...
  • llGetAgentInfo
    llGetAgentInfo integer llGetAgentInfo(key id) エージェントの情報を入手する。 腕利きのエージェントを調査する場合は報復を覚悟したりしなくても良い。 ここで言うエージェントというのは要するにアバターのことである。 この関数で調べることができるのは、主にアバターの動作である。 戻り値はビットフィールドになっているので以下の定数と 演算を行って判定する。 定数 説明 実際の値 AGENT_FLYING 飛行中もしくは落下中 1 AGENT_ATTACHMENTS アタッチメントを装備している 2 AGENT_SCRIPTED スクリプト入りのアタッチメントを装備している 4 AGENT_MOUSELOOK マウスルック状態 8 AGENT_SITTING 地面もしくはオブジェクトの上に座っている 1...
  • エラー対応
    エラーが出る原因と対処方法についてまとめてみました。 LSLに関わって発生するエラーには主に3種類あります。 コンパイルエラー(Compiler Errors) ランタイムエラー(Run-Time Errors) ビルドエラー(Build Errors) 以下にエラーの種類と原因、対処方法について書いていますので参考にしてみて下さい。 コンパイルエラーSyntax Error Type mismatch Function call mismatches type or number of arguments Name not defined within scope Name previously declared within scope Use of vector or quaternion method on incorrect type Lists can...
  • llGetInventoryName
    llGetInventoryName string llGetInventoryName(integer type, integer number) コンテンツ内にある指定したtypeのnumber番目のアイテムの名前を返す。 numberはゼロから始まるアイテムの番号である。 指定したアイテムが存在しない場合は空文字""が返る。 アイテムのタイプには以下の値を使用する。 定数 値 説明 INVENTORY_ALL -1 全種類 INVENTORY_ANIMATION 20 アニメーション INVENTORY_BODYPART 13 ボディパーツ INVENTORY_CLOTHING 5 服 INVENTORY_GESTURE 21 ジェスチャー INVENTORY_LANDMARK 3 ランドマーク INVENTO...
  • イベント系
    イベント系 タッチ 関数・イベント名 区分 概要 定義 touch イベント タッチされているとき touch(integer num_detected) touch_end イベント タッチが終了したとき touch_end(integer num_detected) touch_start イベント タッチが開始されたとき touch_start(integer num_detected) llSetTouchText 関数 パイメニューの「Touch」を他の文字列に変更する llSetTouchText(string text) アタッチ 関数・イベント名 区分 概要 定義 attach イベント アタッチ/デタッチされたとき[参考]初級lsl-21 attach(key id) llAttachToAvatar 関数 オブジェクトをAttachさせる ...
  • llEjectFromLand
    llEjectFromLand llEjectFromLand(key user) userに指定されたUUIDを持つアバターを土地から吹き飛ばす。 スクリプトのオーナーの土地に限り有効。 この関数の餌食になったアバターは文字通り「吹き飛ば」される。 バシルーラみたいなものである。 sitしていても防御することはできない。 建物内などに居た場合でも、屋根を突き抜けて吹き飛ばされてしまう。 lslWiki等を参照すると、この関数の使用時には事前に「警告」をすることが推奨されている。 いきなり吹き飛ばすのでは迷惑行為と見なされかねないからである。 高速で吹き飛ばされると、人によってはクライアントがクラッシュする可能性もある。 単に侵入者を排除したいのであれば、まずllTeleportAgentHome?関数の使用を検討すべきであろう。 とか言いつ...
  • llGetPrimitiveParams
    llGetPrimitiveParams list llGetPrimitiveParams(list params) primの属性値を返す。 引数paramsには取得したい属性のリストを指定する。 戻り値は引数に指定した属性に応じたリスト型のデータとなる。 基本的に、buildツールを使って指定可能なprimの設定値は全てこの関数を使用して取得できる。 また、この関数の戻り値を使ってllSetPrimitiveParams?関数を実行すると、buildツールと同様にprimを編集することが可能である。 これはつまりbuildの自動化が実現できることを意味する。 鏡面コピースクリプトなどは、この関数を使ってコピー元のprimの属性値を取得し、必要なパラメータに鏡面変換をかけた後、llSetPrimitiveParams?関数でコピー後のprimを形成する。 ...
  • llGetMass
    llGetMass float llGetMass() オブジェクトの質量を得る。 リンクされたオブジェクトのルートで実行した場合はオブジェクト全体の質量を返す。 子primで実行した場合、そのprimの重さを返す。 また、アタッチメントで実行した場合はアバターの体重を得ることができる。 他のオブジェクトの質量を調べるにはllGetObjectMass関数を使う。 なお、これらMass系関数で返される質量の単位はLindogram(リンドグラム:Lg)と慣例的に呼ばれることがあるらしいが、あまり耳にしない。 名前 コメ...
  • llEmail
    llEmail llEmail(string address, string subject, string message) addressに指定したメールアドレス宛てに、タイトルsubject、本文messageのEメールを送信する。 この関数の使い方についてはEmailの送受信?を参照。
  • デモ商品を作ろう
    はじめに デモ用商品の仕組み アタッチの制御llDetachFromAvatar(); attach?(key attached) llDie(); デモ商品用スクリプト 今回のポイント はじめに 今回はデモ用の商品を作る方法について書こうと思います。 デモ用とは、例えば一定期間のみ使用可能なもの、特定回数使ったら使えなくなるようなサンプル商品です。 当然ながら、スクリプトを使って制御をしますので、スクリプトが組み込めない商品(スキン・服・テクスチャ・アニメーションなど)に関してはここで解説する方法は使えません。 スクリプトが組み込める商品であれば、どんなものにも応用は利きますが、今回は特にアタッチメントについて見ていきます。 というのも、アタッチを制御するスクリプトについて今まで説明していないからです(^^; デモ用商品のスクリプトを通して、スクリプトによ...
  • llGetBoundingBox
    llGetBoundingBox list llGetBoundingBox(key object) 指定したUUIDのオブジェクト(またはアバター)の当たり判定領域を取得する。 当たり判定の領域のことをバウンディングボックスと言う。 通常バウンディングボックスはオブジェクトをすっぽり覆う立方体で示される。 この関数の戻り値は、vector型変数を二つ含むリストである。 二つのvectorは、バウンディングボックスの最小コーナー座標及び最大コーナー座標を示す。 以下の例はLSL-Wikiからそのまま持ってきたスクリプトであるが、バウンディングボックスを視覚化する。 半透明のキューブに以下のスクリプトを仕込み、チャンネル3で対象のオブジェクト名を指定する。 例えば「/3 Miz Cremorne」と発言すれば、私のアバターのバウンディングボックスを見ること...
  • llGetInventoryType
    llGetInventoryType integer llGetInventoryType(string name) コンテンツ内にある指定した名前のアイテムのタイプを返す。 一般的に、引数nameで指定したアイテムがコンテンツ内に存在するかどうかをチェックするのに利用される。 戻り値は以下のいずれかとなる。 定数 値 説明 INVENTORY_NONE -1 アイテムは存在しない INVENTORY_ANIMATION 20 アニメーション INVENTORY_BODYPART 13 ボディパーツ INVENTORY_CLOTHING 5 服 INVENTORY_GESTURE 21 ジェスチャー INVENTORY_LANDMARK 3 ランドマーク INVENTORY_NOTECARD 7 ノートカード INVENTORY_OB...
  • llGetEnergy
    llGetEnergy float llGetEnergy() オブジェクトの残エネルギーを得る。 戻り値は0.0~1.0の範囲であり、残エネルギーの割合を示す。 0.0はエネルギーが完全に無いことを意味し、1.0は満タンである。 SLにおけるエネルギーとは、物理オブジェクトが持つ運動エネルギーのことで、以下の物理系関数を使ってオブジェクトを動かすと消費される。 llMoveToTarget llApplyImpulse llSetPos? llSetForce? llSetTorque? llApplyRotationalImpulse llPushObject エネルギーが減るとともに上記の関数は効果が弱くなっていき、ゼロになれば効果は無くなる。 つまり物理系関数を使ってオブジェクトを永久的に動かすことは不可能な仕様になっている。 しかしながら...
  • llGetInventoryNumber
    llGetInventoryNumber integer llGetInventoryNumber(integer type) 指定したtypeのアイテムがコンテンツ内にいくつあるかを返す。 アイテムのタイプには以下の値を使用する。 定数 値 説明 INVENTORY_ALL -1 全種類 INVENTORY_ANIMATION 20 アニメーション INVENTORY_BODYPART 13 ボディパーツ INVENTORY_CLOTHING 5 服 INVENTORY_GESTURE 21 ジェスチャー INVENTORY_LANDMARK 3 ランドマーク INVENTORY_NOTECARD 7 ノートカード INVENTORY_OBJECT 6 オブジェクト INVENTORY_SCRIPT 10 スクリプト INVE...
  • llResetScript
    llResetScript llResetScript() スクリプトをリセットする。 リセットを行うと以下のようになる。 変数の値はクリアされ、初期値に戻る 未処理のイベントは全てクリアされて無かったことになる ステートはdefaultになり、state_entry?イベントが実行される。 スクリプトエディターの「リセット」ボタンを押すのと一緒。 よく見かけるのは以下のコード。 default { : (略) : on_rez(integer start_param){ llResetScript(); } : (略) : } 上記のコードはrezされたときに必ずスクリプトをリセットする。 変数やステートを保持しないタイプのスクリプトであればこれでOK。 ...
  • llAttachToAvatar
    llAttachToAvatar llAttachToAvatar(integer attachment) オブジェクトを指定した位置にアタッチさせる。 オブジェクトはワールド内にrezされていなければならず、かつスクリプトからパーミッションPERMISSION_ATTACHを取得する必要がある。 また、オブジェクトのオーナーでなければアタッチはできない。 従って、オーナー以外のユーザーに対してPERMISSION_ATTACHを取得しても無意味である。 アタッチしようとした箇所にすでに別のアタッチメントが付いていた場合、もとのアタッチメントは自動的にデタッチされ、この関数を実行したオブジェクトが新たにアタッチされる。 初めてアタッチされた場合、オブジェクトはアタッチ箇所の0,0,0の位置に付くが、位置調整を行っておけば、二度目以降は調整した位置に付く。 以上、...
  • パーティクル
    パーティクルとは パーティクル関数(llParticleSystem関数) パーティクルモジュールパラメータの説明マスク・パラメータ パターン・パラメータ その他詳細パラメータ 応用編 パーティクルとは 小技というわけではありませんが、パーティクルシステムについては設定すべきパラメータが非常に多く、わかりにくいという声をしばしば聞きます。 ですので今回はパーティクルシステムの解説とサンプル・スクリプトを書いておくことにします。 パーティクルとは粒子のことです。 SLのパーティクルシステムは、煙や火、水しぶきなどの粒子を表現するための仕組みのことを言います。 スクリプトを使う以外にパーティクルを制御する方法はありません。 従って、粒子を使った表現をしようと思ったら、パーティクルシステムのスクリプトを使わなければなりません。 よく見かけるパーティクルを列...
  • llGetNextEmail
    llGetNextEmail llGetNextEmail(string address, string subject) 郵便受けに溜まっている次のメールを取得するよう指示を出す。 メールがあった場合はemailイベントが発生し、そのメールは郵便受けから取り出される(削除される)。 この関数の詳細な使い方については「Emailの送受信?」の記事を参照。 名前 コメント
  • 鍵をかける
    はじめに 鍵をかけることの意味操作できる人を限定する方法 鍵をかける 強制排除スクリプト はじめに やもさんより質問いただいたスクリプトについて解説です。 [やもさんからの質問] 最近自分で服を作るようになり試着の為の更衣室を用意したのですが ドアに鍵をかけるか、自分にしか開けられないドアするにはどのようにしたら良いのでしょうか? これって結構ニーズのある話だと思います。 着替えの最中は裸になることも多く、やはり人に見られたくない場合がありますので・・・。 また、Kirさんからも関連のある質問をいただきました。 [Kirさんからの質問] なんとか、オーナー限定にて動作するように改良したいのですが、 if (llDetectedKey(0) == llGetOwner()){ handle=llListen(channel, "&qu...
  • llGetSunDirection
    llGetSunDirection vector llGetSunDirection() 太陽の位置を示す単位ベクトルを得る。 この関数はSL内で見かけ上の「昼」か「夜」かを判定するのに利用される。 すなわち、llGetSunDirection関数の戻り値のZ値(垂直方向)が、 プラスであれば太陽は地平線よりも「上」=「昼」 マイナスであれば太陽は地平線よりも「下」=「夜」 と判断できる。 この関数の戻り値は、クライアントから変更可能な太陽位置とは無関係である。 たとえクライアント側で太陽の位置を「真昼」に設定していたとしても、実際にはSIMでは太陽が沈んでいるかもしれない。 関数の戻り値は実際の太陽の位置のほうである。 以下の例は夜か昼かを太陽の位置で判断する。 default { touch_start(integer detec...
  • llList2Vector
    llList2Vector vector llList2Vector(list src, integer index) リストsrcのindex番目の要素をvector型として取り出す。 先頭要素は0番目と数えるので注意すること。 指定した要素がvector型として取り出せないような要素だった場合(例えば0.27とか"yah-yah"など)はZERO_VECTORが返る。 仮に文字列で" 10.0, 0.0, 12.5 "などと入っていた場合でも、戻り値はZERO_VECTORになるようだ。 ただしこの場合、一旦文字列で要素を取り出し、それからvector型にキャストすると正しく読み込める。 vector p = (vector)llList2String(pos,0); ...
  • llDetectedVel
    llDetectedVel vector llDetectedVel(integer number) 検知されたアバター/オブジェクトの速度及び進行方向を取得する。 主に衝突イベントにて使用される。 llDetectedVelはデテクト系の関数の一つである。 デテクト系関数についてはllDetectedKeyの説明もしくは初級スクリプト第二十回「センサーを使おう」のセンサーイベントについての説明を参照のこと。 以下の例は衝突したアバター/オブジェクトの速度を表示する。 default { collision_start(integer num_detected) { llSay(0, "Detected velocity is " + (string)llVecMag(llDetectedVel(0))); ...
  • llDetectedPos
    llDetectedPos vector llDetectedPos(integer number) 検知されたアバター/オブジェクトの位置を取得する。 llDetectedPosはデテクト系の関数の一つである。 デテクト系関数についてはllDetectedKeyの説明もしくは初級スクリプト第二十回「センサーを使おう」のセンサーイベントについての説明を参照のこと。 以下の例は衝突したアバター/オブジェクトの位置を表示する。 default { collision_start(integer num_detected) { llSay(0, "Detected position is " + (string)llDetectedPos(0)); } }
  • @wiki全体から「object_rez!」で調べる

更新順にページ一覧表示 | 作成順にページ一覧表示 | ページ名順にページ一覧表示 | wiki内検索

記事メニュー
目安箱バナー