2008年06月21日
リストから要素を消す方法を教えて下さい。
解決しました。ありがとうございました。
【目的】
カードゲームを作ろうとしています。
【やりたいこと】
カードの束からランダムにカードを一枚引きます。
手札に引いたカードを入れておきます。
dialogで手札を表示して使うカードを選びます。
使ったカードを手札から消します。(この部分がどうやったらいいかわかりません)
【疑問点】
listの何番目の要素を消すという(llDeleteSubList)方法ではなくて、要素の名前を用いてリストからその名前の要素を消す方法。
【スクリプト】
list deck = ["ice","fire","air","earth",...]//カードの束を用意する
list hand ; //手札
i = llFloor(llFrand(40))://何番目のカードを引くか決める
llListInsertList(hand,llList2list(deck,i,i),llGetListLength(hand));//手札に引いたカードを入れる。
llDialog(llDetectedKey(0),"",hand,dialogchannel);//ダイアログで手札を表示
listen(integer channel,string name,key id,string message)
ここで聞いたmessageのカードを手札(handのリスト)から消したいのですが、
どうようにしたらよいのでしょうか?
よろしければどなたか教えていただけますでしょうか?
よろしくおねがいします。
【目的】
カードゲームを作ろうとしています。
【やりたいこと】
カードの束からランダムにカードを一枚引きます。
手札に引いたカードを入れておきます。
dialogで手札を表示して使うカードを選びます。
使ったカードを手札から消します。(この部分がどうやったらいいかわかりません)
【疑問点】
listの何番目の要素を消すという(llDeleteSubList)方法ではなくて、要素の名前を用いてリストからその名前の要素を消す方法。
【スクリプト】
list deck = ["ice","fire","air","earth",...]//カードの束を用意する
list hand ; //手札
i = llFloor(llFrand(40))://何番目のカードを引くか決める
llListInsertList(hand,llList2list(deck,i,i),llGetListLength(hand));//手札に引いたカードを入れる。
llDialog(llDetectedKey(0),"",hand,dialogchannel);//ダイアログで手札を表示
listen(integer channel,string name,key id,string message)
ここで聞いたmessageのカードを手札(handのリスト)から消したいのですが、
どうようにしたらよいのでしょうか?
よろしければどなたか教えていただけますでしょうか?
よろしくおねがいします。