2007年10月07日
募金箱(リンデンスクリプト Tips)
今日は、お友達の依頼で募金箱を作ってみました。 機能としては、入金額上位3名の名前、金額と累計金額を表示します。 こんなかんじw<スクリプト内容> // // Fund-raising box SCRIPT Ver1.0 // // Created by Zero2000 Kid 2007/10/7 string msg; list moneylist = [0,"",0,"",0,"",0,""]; integer total=0; setText () { integer i; msg=llUnescapeURL("%2e%3a%2a%e3%83%81%e3%83%83%e3%83%97%ef%bc%a2%ef%bc%af%ef%bc%b8%2a%3a%2e") + "\n"; for (i = 0; i < 3; i++) { msg+=llUnescapeURL("%e5%85%a5%e9%87%91%e9%a1%8d") +" No." + (string)(i+1) + " " + llList2String(moneylist,2*i+1) + llUnescapeURL("%e3%81%95%e3%82%93") + "(" + llList2String(moneylist,2*i) + "L$)\n"; } msg+= llUnescapeURL("%e7%b4%af%e8%a8%88%e9%87%91%e9%a1%8d") + ":"+ (string)total + "L$"; llSetText(msg,<1.0, 1.0, 1.0>, 1.0); } default { state_entry() { setText(); } money(key id, integer amount) { moneylist = llListReplaceList(moneylist,[amount,llKey2Name(id)],6,7); moneylist = llListSort(moneylist ,2, FALSE); total+=amount; setText(); } } リンデンスクリプト Tips Intexへ
この記事へのトラックバックURL
この記事へのコメント
さおりさんへ
ご質問にありました、"チップBOX" という名称から"募金箱"へ、
入金者を表示せず累計金額だけを表示するスクリプトです。
ご参考ください^^
string msg;
integer total=0;
setText () {
msg=llUnescapeURL("%2e%3a%2a%e5%8b%9f%e9%87%91%e7%ae%b1%2a%3a%2e") + "\n";
msg+= llUnescapeURL("%e7%b4%af%e8%a8%88%e9%87%91%e9%a1%8d") + ":"+ (string)total + "L$";
llSetText(msg,<1.0, 1.0, 1.0>, 1.0);
}
default {
state_entry() {
setText();
}
money(key id, integer amount) {
total+=amount;
setText();
}
}
ご質問にありました、"チップBOX" という名称から"募金箱"へ、
入金者を表示せず累計金額だけを表示するスクリプトです。
ご参考ください^^
string msg;
integer total=0;
setText () {
msg=llUnescapeURL("%2e%3a%2a%e5%8b%9f%e9%87%91%e7%ae%b1%2a%3a%2e") + "\n";
msg+= llUnescapeURL("%e7%b4%af%e8%a8%88%e9%87%91%e9%a1%8d") + ":"+ (string)total + "L$";
llSetText(msg,<1.0, 1.0, 1.0>, 1.0);
}
default {
state_entry() {
setText();
}
money(key id, integer amount) {
total+=amount;
setText();
}
}
Posted by ZERO
at 2007年11月23日 21:55
at 2007年11月23日 21:55合計金額、募金額を出さずに、ただ名前だけ出すにはどうしたらいいでしょうか?
Posted by final kurka at 2008年03月01日 03:45
final kurka さん
お返事遅くなりました。
名前だけ表示したい場合は、
setText () {
・・
・・
}
の部分の中を以下のように変更すればOKです。
setText () {
integer i;
msg=llUnescapeURL("%2e%3a%2a%e3%83%81%e3%83%83%e3%83%97%ef%bc%a2%ef%bc%af%ef%bc%b8%2a%3a%2e") + "\n";
for (i = 0; i < 3; i++) {
msg+=llList2String(moneylist,2*i+1)+"\n";
}
llSetText(msg,<1.0, 1.0, 1.0>, 1.0);
}
お返事遅くなりました。
名前だけ表示したい場合は、
setText () {
・・
・・
}
の部分の中を以下のように変更すればOKです。
setText () {
integer i;
msg=llUnescapeURL("%2e%3a%2a%e3%83%81%e3%83%83%e3%83%97%ef%bc%a2%ef%bc%af%ef%bc%b8%2a%3a%2e") + "\n";
for (i = 0; i < 3; i++) {
msg+=llList2String(moneylist,2*i+1)+"\n";
}
llSetText(msg,<1.0, 1.0, 1.0>, 1.0);
}
Posted by ZERO
at 2008年03月16日 17:26
at 2008年03月16日 17:26先日購入させていただきました
お手数ですが変更可能であればおしえて
いただければとおもいます
チップBOXの文字を→STAFFの名前
入金額(No,1)の入金額という文字を神様に
入金額(No,2)社長様
入金額(No,3)お兄様
できるでしょうか?
できれば支払い先は入力した名前のSTAFFにはいり、チップジャーの所有者はオーナーの自分になるようにしたいのです。
(チップジャーのテクスをいつでも変更できるように)
お手数ですが変更可能であればおしえて
いただければとおもいます
チップBOXの文字を→STAFFの名前
入金額(No,1)の入金額という文字を神様に
入金額(No,2)社長様
入金額(No,3)お兄様
できるでしょうか?
できれば支払い先は入力した名前のSTAFFにはいり、チップジャーの所有者はオーナーの自分になるようにしたいのです。
(チップジャーのテクスをいつでも変更できるように)
Posted by Nobu Vita at 2008年07月21日 16:46
Nobuさんへ
はじめまして。
お返事遅くなりました。
可能ですが、少し説明が必要になると思いますので、一度IMください。
よろしくです^^
はじめまして。
お返事遅くなりました。
可能ですが、少し説明が必要になると思いますので、一度IMください。
よろしくです^^
Posted by ZERO
at 2008年07月27日 03:49
at 2008年07月27日 03:49


<スクリプト内容>
//
// Fund-raising box SCRIPT Ver1.0
//
// Created by Zero2000 Kid 2007/10/7
string msg;
list moneylist = [0,"",0,"",0,"",0,""];
integer total=0;
setText () {
integer i;
msg=llUnescapeURL("%2e%3a%2a%e3%83%81%e3%83%83%e3%83%97%ef%bc%a2%ef%bc%af%ef%bc%b8%2a%3a%2e") + "\n";
for (i = 0; i < 3; i++) {
msg+=llUnescapeURL("%e5%85%a5%e9%87%91%e9%a1%8d") +" No." + (string)(i+1) + " "
+ llList2String(moneylist,2*i+1) + llUnescapeURL("%e3%81%95%e3%82%93")
+ "(" + llList2String(moneylist,2*i) + "L$)\n";
}
msg+= llUnescapeURL("%e7%b4%af%e8%a8%88%e9%87%91%e9%a1%8d") + ":"+ (string)total + "L$";
llSetText(msg,<1.0, 1.0, 1.0>, 1.0);
}
default {
state_entry() {
setText();
}
money(key id, integer amount) {
moneylist = llListReplaceList(moneylist,[amount,llKey2Name(id)],6,7);
moneylist = llListSort(moneylist ,2, FALSE);
total+=amount;
setText();
}
}