2008年09月09日
アクティブなグループ名を取得
アバターの現在のアバター名を取得する方法はあるんでしょうか。
具体的には
オブジェクトをタッチした場合、特定のグループ名であるかどうかの判定をしたいのですが
オブジェクトのグループとは無関係な「特定のグループ名」を設定したいのです。
llDetectedGroup
llSameGroup
の場合はオブジェクトのグループでしか判定できないぽいのですし
llRequestAgentData
でもグループ情報はなさそうなんです
アドバイスいただけたらとおもいます。よろしくおねがいします。
具体的には
オブジェクトをタッチした場合、特定のグループ名であるかどうかの判定をしたいのですが
オブジェクトのグループとは無関係な「特定のグループ名」を設定したいのです。
llDetectedGroup
llSameGroup
の場合はオブジェクトのグループでしか判定できないぽいのですし
llRequestAgentData
でもグループ情報はなさそうなんです
アドバイスいただけたらとおもいます。よろしくおねがいします。
テクスチェンジのHUDについて
モール用のプリムカウンターを探しています
連続するアニメーションの処理
オブジェクトの上にフローティングテキストを出す。
チャットログの盗聴について
椅子に座った後で位置調整できるスクリプト
モール用のプリムカウンターを探しています
連続するアニメーションの処理
オブジェクトの上にフローティングテキストを出す。
チャットログの盗聴について
椅子に座った後で位置調整できるスクリプト
アバター名ではなくアクティブな「グループ名」の取得です。
というのを取得する関数はありません。
オブジェクトとアバターが同じグループか否かしか
残念ながら判定する方法はありません。
現在SLのsearchAPIを作っているようです。
http://wiki.secondlife.com/wiki/SearchAPI
こちらをうまく使うと、そのアバターが開設したグループは
確実にとはいえませんが、名前が取得できるかも知れません。
不完全な形ですが・・・
Ys@MALLさんのブログで前こうゆう記事見たんですが、用途は同じような感じですかね?
http://wiki.secondlife.com/wiki/LlSameGroup/ja
でも同じSIMでないとだめなんじゃないかなって思うんですけど
>もしくは、オブジェクトがagentのアクティブグループに譲渡されている場合もtrueを返します。
この行が意味よくわかんないんですが、グループで共有にしたらオッケーってことなんでしょうかね?
言葉そのままかと^^
「オブジェクトがagentのアクティブグループに譲渡されている場合」
グループ共有にチェックを入れて譲渡するとそのオブジェクトは
自分の持ち物ではなくなってグループの持ち物となります。
*オブジェクトの持ち主はたしかGroupOwnerとかGroupOBJECTとかそういった風に表示が変わります。
その状態でもアバターのアクティブグループと同じグループのオブジェクトならば、trueと判定しますってことのようですw
当たり前といえば当たり前なことですよね^^
非常にめんどくさいのですが、Ys@MALLさんのようにグループメンバーなら
グループギフトを渡すと言うベンダーが必要で、でもそのベンダーのグループの土地では無いので置けない・・・というのが問題で困っているのなら
グループの規模にもよりますが
グループメンバーの名前をすべてリスト化させて
そのリストと判定させてオブジェクトを渡すというのはどうでしょうか?
monoならば比較的早い処理をすると思いますけど・・・
リスト作るのがめんどくさいですけどね><
外部サーバたてて処理するのはこの程度だと
面倒だと思います。
>自分の持ち物ではなくなってグループの持ち物となります。
>*オブジェクトの持ち主はたしかGroupOwnerとかGroupOBJECTとかそういった風に表示が変わります。
>その状態でもアバターのアクティブグループと同じグループのオブジェクトならば、trueと判定しますってことのようですw
>当たり前といえば当たり前なことですよね^^
あ、そゆことなんですか^^;;
てことは、やっぱりllSameGroupは同じSIM内でないとだめなんでしょうね。
Ys@MALLさんのように、たとえばレンタル地で自分自身のグループメンバーだけにギフトを与えたり、グループメンバーが購入した時だけ割引をしたりしたいという事なんでしょうか。
これと同じケースであれば、私は今回解決することができました。
まだ割引のスクリプトの方は試していませんが・・恐らく出来ると言われたので可能だろうと思います。
私が持っているスクリプトが、スクリプト屋さんにカスタムで作ってもらったものだから出来るのか?それともそんなに料金を出さなくても、普通にある関数なのかはわかりません。
そして、自分自身の店に必要で、作ってもらったものなのでソースを公開することはできません。ごめんなさい。
ひとつ条件は発生しますが・・私の場合は
レンタル地でも(テナントだとしても)そのスクリプトが入ったオブジェクトをおくときだけは、そこの土地グループ(テナントグループ)をアクティブにして設置して、その後にオブジェクトのグループ設定を自分自身のグループに変えています。
そしてこれが動くためには土地の設定のところで、「スクリプトの実行」が「全ての住人」にチェックが入っていないといけません。
そして、関係あるのかわからないですが、他の住人のオブジェクトの自動返却のところは0になってます。
これももし必要だったら、ちょっとモールとかテナントだと厳しいかもしれませんね。
今は試験的に、グループタグをアクティブにした状態でパネルに触れたら、
メンバーだけにギフトを与えるというスクリプトをおいていますが、きちんと動作確認できました。