2009年09月28日
長押しでダイアログを
今日は・・
依然作ったファイスライトスクリを改訂する必要が出てきて
依然の物は・・通常のタッチでダイアログをだしてたのですが
5秒くらいの長押しででるようにしたいのですが
長押しようのスクリをいれた途端に動かなくなってしまって
困ってます。
教えて頂ければ幸いです。
よろしくおねがいします
-----------------------------------------------------------------------
string text="Please choose your favorite jewel.";
string button1="0%";
string button2="25%";
string button3="50%";
string button4="75%";
string button5="100%";
integer counter=0;
list menu=[button1,button2,button3,button4,button5];
integer CHANNEL;
default
{
state_entry()
{
CHANNEL=llCeil(llFrand(2147483646));
llListen(CHANNEL,"",NULL_KEY,"");
touch_start(integer total_number)
if (llDetectedKey(0) == llGetOwner()){
if (counter < 50){
counter ++;
}else if (counter == 50){
counter ++;
handle=llListen(channel, "", llGetOwner(), "");
llDialog(agent,text,menu,CHANNEL);
llSetTimerEvent(60.0);
{
key agent=llGetOwner();
if (llDetectedKey(0) == llGetOwner()) {
counter=0;
}
}
}
else
{
llWhisper(0,"Sorry.Only an owner can change it.");
}
state default;
}
listen(integer channel, string name, key id, string msg)
{
if (channel == CHANNEL)
{
if (msg == button1) {
llMessageLinked(LINK_ALL_CHILDREN,0,"0%","");
}
else if (msg == button2) {
llMessageLinked(LINK_ALL_CHILDREN,0,"25%","");
}
else if (msg == button3) {
llMessageLinked(LINK_ALL_CHILDREN,0,"50%","");
}
else if (msg == button4) {
llMessageLinked(LINK_ALL_CHILDREN,0,"75%","");
}
else if (msg == button5) {
llMessageLinked(LINK_ALL_CHILDREN,0,"100%","");
}
}
llResetScript();
}
----------------------------------------------------------------------------
エラーが出るのは
touch_start(integer total_number)なんですが。。。
対処方法がわかりません・・
教えて頂ければ幸いです
依然作ったファイスライトスクリを改訂する必要が出てきて
依然の物は・・通常のタッチでダイアログをだしてたのですが
5秒くらいの長押しででるようにしたいのですが
長押しようのスクリをいれた途端に動かなくなってしまって
困ってます。
教えて頂ければ幸いです。
よろしくおねがいします
-----------------------------------------------------------------------
string text="Please choose your favorite jewel.";
string button1="0%";
string button2="25%";
string button3="50%";
string button4="75%";
string button5="100%";
integer counter=0;
list menu=[button1,button2,button3,button4,button5];
integer CHANNEL;
default
{
state_entry()
{
CHANNEL=llCeil(llFrand(2147483646));
llListen(CHANNEL,"",NULL_KEY,"");
touch_start(integer total_number)
if (llDetectedKey(0) == llGetOwner()){
if (counter < 50){
counter ++;
}else if (counter == 50){
counter ++;
handle=llListen(channel, "", llGetOwner(), "");
llDialog(agent,text,menu,CHANNEL);
llSetTimerEvent(60.0);
{
key agent=llGetOwner();
if (llDetectedKey(0) == llGetOwner()) {
counter=0;
}
}
}
else
{
llWhisper(0,"Sorry.Only an owner can change it.");
}
state default;
}
listen(integer channel, string name, key id, string msg)
{
if (channel == CHANNEL)
{
if (msg == button1) {
llMessageLinked(LINK_ALL_CHILDREN,0,"0%","");
}
else if (msg == button2) {
llMessageLinked(LINK_ALL_CHILDREN,0,"25%","");
}
else if (msg == button3) {
llMessageLinked(LINK_ALL_CHILDREN,0,"50%","");
}
else if (msg == button4) {
llMessageLinked(LINK_ALL_CHILDREN,0,"75%","");
}
else if (msg == button5) {
llMessageLinked(LINK_ALL_CHILDREN,0,"100%","");
}
}
llResetScript();
}
----------------------------------------------------------------------------
エラーが出るのは
touch_start(integer total_number)なんですが。。。
対処方法がわかりません・・
教えて頂ければ幸いです