2009年04月23日
BackUPシステム
こんにちは~
またまたお聞きしたいのですが
今BackUPシステムなるものを作成してまして
どうしてもうまく動かない部分があります
どこが悪いのかお教えください~
宜しくお願いします~
integer touch_count=0;
integer use_hour=0;
default {
state_entry(){
llListen(-71,"","llGetOwnerKey()","");
}
on_rez(integer num){
llListen(-71,"","llGetOwnerKey()","");
}
listen(integer channel , string name , key id , string message){
list listMessage = llCSV2List(message);
if (llList2String(listMessage, 0) == (string)llGetOwner()){
llSetText(llList2String(listMessage, 1),<1.0,0.0,0.0>,1.0);
llSay(0, "Lv Data Clearing・・・・");
integer count = (integer)llList2String(listMessage, 1);
integer i;
for(i=0;i
llSay(-10,"detadown");
string strMassage ="detadown";
llSay(-10, (string)llGetOwner() + "," + strMassage);//ここで止まってしまいます!!
}
state dead;
return;
}
}
}
state dead {
state_entry(){
llSay(-10,"check01");
string strMassage ="check01";
llSay(-10, (string)llGetOwner() + "," + strMassage);
llSay(0, "Lv Data Loading・・・・");
llListen(-71,"","llGetOwnerKey()","");
}
on_rez(integer num){
llListen(-71,"","llGetOwnerKey()","");
}
listen(integer channel , string name , key id , string message){
list listMessage = llCSV2List(message);
if (llList2String(listMessage, 0) == (string)llGetOwner()){
llSetText(llList2String(listMessage, 1),<1.0,0.0,0.0>,1.0);
integer count = (integer)llList2String(listMessage, 1);
integer i;
for(i=0;i
llSay(-10,"detaup");
string strMassage ="detaup";
llSay(-10, (string)llGetOwner() + "," + strMassage);
}
llListenRemove(0);
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
}
}
run_time_permissions(integer p){
if (p & PERMISSION_ATTACH){
llDetachFromAvatar();
llDie();
}else{llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
}
}
attach(key attached) {
if (attached != NULL_KEY) {
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
} else {
llDie();
}
}
}
またまたお聞きしたいのですが
今BackUPシステムなるものを作成してまして
どうしてもうまく動かない部分があります
どこが悪いのかお教えください~
宜しくお願いします~
integer touch_count=0;
integer use_hour=0;
default {
state_entry(){
llListen(-71,"","llGetOwnerKey()","");
}
on_rez(integer num){
llListen(-71,"","llGetOwnerKey()","");
}
listen(integer channel , string name , key id , string message){
list listMessage = llCSV2List(message);
if (llList2String(listMessage, 0) == (string)llGetOwner()){
llSetText(llList2String(listMessage, 1),<1.0,0.0,0.0>,1.0);
llSay(0, "Lv Data Clearing・・・・");
integer count = (integer)llList2String(listMessage, 1);
integer i;
for(i=0;i
string strMassage ="detadown";
llSay(-10, (string)llGetOwner() + "," + strMassage);//ここで止まってしまいます!!
}
state dead;
return;
}
}
}
state dead {
state_entry(){
llSay(-10,"check01");
string strMassage ="check01";
llSay(-10, (string)llGetOwner() + "," + strMassage);
llSay(0, "Lv Data Loading・・・・");
llListen(-71,"","llGetOwnerKey()","");
}
on_rez(integer num){
llListen(-71,"","llGetOwnerKey()","");
}
listen(integer channel , string name , key id , string message){
list listMessage = llCSV2List(message);
if (llList2String(listMessage, 0) == (string)llGetOwner()){
llSetText(llList2String(listMessage, 1),<1.0,0.0,0.0>,1.0);
integer count = (integer)llList2String(listMessage, 1);
integer i;
for(i=0;i
string strMassage ="detaup";
llSay(-10, (string)llGetOwner() + "," + strMassage);
}
llListenRemove(0);
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
}
}
run_time_permissions(integer p){
if (p & PERMISSION_ATTACH){
llDetachFromAvatar();
llDie();
}else{llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
}
}
attach(key attached) {
if (attached != NULL_KEY) {
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
} else {
llDie();
}
}
}
テクスチェンジのHUDについて
モール用のプリムカウンターを探しています
連続するアニメーションの処理
オブジェクトの上にフローティングテキストを出す。
チャットログの盗聴について
椅子に座った後で位置調整できるスクリプト
モール用のプリムカウンターを探しています
連続するアニメーションの処理
オブジェクトの上にフローティングテキストを出す。
チャットログの盗聴について
椅子に座った後で位置調整できるスクリプト
ぬけていました〜
for(i=0;i<count;i--){
llSay(-10,"detadown");
string strMassage ="detadown";
llSay(-10, (string)llGetOwner() + "," + strMassage);
}
が正しいです〜
エラーはしないのですが、この処理がすんで
state deadへ処理が進まないんです〜
llListen(-71,"","llGetOwnerKey()","");
"llGetOwnerKey()" っておかしくないですかね・・・
""はいてますしllGetOwnerではないんですよね?
しかしながらその辺はうまく動いてくれてますね
現状で問題なのが、ループ終了時に次ぎの動作に
行ってくれない部分で悩んでいます〜
state dead;
return;
をfor文の中に入れてみると、最後までは
いくのですが、今度はforのループが一回しか
動きませんでした〜
今回のスクリプトはなかなか手強いですね^^;
完成しました〜
一応下記が出来たものです
integer touch_count=0;
integer use_hour=1;
default {
state_entry()
{
llListen(-71,"","llGetOwnerKey()","");
}
on_rez(integer num)
{
llListen(-71,"","llGetOwnerKey()","");
}
listen(integer channel , string name , key id , string message){
list listMessage = llCSV2List(message);
if (llList2String(listMessage, 0) == (string)llGetOwner()){
llSetText(llList2String(listMessage, 1),<1.0,0.0,0.0>,1.0);
llSay(0, "Lv Data Clearing・・・・");
integer count = (integer)llList2String(listMessage, 1);
integer i;
llSetTimerEvent(10.0);
for(i=0;i<count;i++){
llSay(-10,"detadown");
string strMassage ="detadown";
llSay(-10, (string)llGetOwner() + "," + strMassage);
}
}
}
timer(){
llSetTimerEvent(0.0);
state dead;
//return;
}
}
state dead {
state_entry(){
llSay(-10,"check01");
string strMassage ="check01";
llSay(-10, (string)llGetOwner() + "," + strMassage);
llSay(0, "Lv Data Loading・・・・");
llListen(-71,"","llGetOwnerKey()","");
}
on_rez(integer num)
{
llListen(-71,"","llGetOwnerKey()","");
}
listen(integer channel , string name , key id , string message){
list listMessage = llCSV2List(message);
if (llList2String(listMessage, 0) == (string)llGetOwner()){
llSetText(llList2String(listMessage, 1),<1.0,0.0,0.0>,1.0);
integer count = (integer)llList2String(listMessage, 1);
integer i;
for(i=0;i<count;i++){
llSay(-10,"detaup");
string strMassage ="detaup";
llSay(-10, (string)llGetOwner() + "," + strMassage);
}
llListenRemove(0);
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
}
}
run_time_permissions(integer p){
if (p & PERMISSION_ATTACH){
llDetachFromAvatar();
llDie();
}else{
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
}
}
attach(key attached) {
if (attached != NULL_KEY) {
llRequestPermissions(llGetOwner(), PERMISSION_ATTACH);
} else {
llDie();
}
}
}
てな感じです〜
他のオブジェクトのスクリプトと連携しながら動いて
います〜
ありがとうです〜
本当に、このスクリプト動いています?
すでにみなさんからの指摘済みですが、
llListen(-71,"","llGetOwnerKey()","");
の記述がおかしいセイで、listenが動作しない気がします。
(実験してないですが・・・)
「しかしながらその辺はうまく動いてくれてますね」
とか
「一応下記が出来たものです」
とかあるので、もしかしたら動くの?って気になってます。
それから、
ささぴさんが2回目にコメントされている
「もしかして最後がi++じゃないですか?」
が、質問の意図どおりの回答だと思いますが、
それに対する反応もありませんし・・・
すべてのコードを見ていないし、ほかのスクリプトと連動するものなら実験のしようもないのでなんともいえませんが…。
「動いている」と言うなら、もしかしたら、keyが必要なところにkeyではない文字列が入っているために、NULL_KEYや””の場合と同じように動いちゃってるんですかね。
そうすると、別のkeyからのllSayでも受け付けてしまうことに…。
ううん…気持ち悪い事この上ないですねw