Vote and discuss hehe.
CODE
integer ChannelA = 15 ;
integer ChannelB = 16 ;
integer ListenA ;
integer ListenB ;
integer AListening ;
integer BListening ;
integer TimerA = 0 ;
integer TimerB = 0 ;
default
{
state_entry()
{
ListenA = llListen(ChannelA, "", NULL_KEY, "") ;
llListenControl(ListenA, FALSE) ;
AListening = FALSE ;
BListening = FALSE ;
llSetTimerEvent(1.0) ;
}
touch_end(integer total_number)
{
TimerA = 0 ;
if (!AListening)
{
llListenControl(ListenA, TRUE) ;
AListening = TRUE ;
}
TimerB = 0 ;
if (!BListening)
{
ListenB = llListen(ChannelB, "", NULL_KEY, "") ;
BListening = TRUE ;
}
llDialog(llGetOwner(), "DialogA", ["Pick me!"], ChannelA) ;
llDialog(llGetOwner(), "DialogB", ["No me!"], ChannelB) ;
}
timer()
{
if (AListening && (++TimerA > 60))
{
llListenControl(ListenA, FALSE) ;
AListening = FALSE ;
llOwnerSay("A stopped listening") ;
}
if (BListening && (++TimerB > 60))
{
llListenRemove(ListenB) ;
BListening = FALSE ;
llOwnerSay("B stopped listening") ;
}
}
}