Initial Upload
This commit is contained in:
72
Coller/Obey.lsl
Normal file
72
Coller/Obey.lsl
Normal file
@ -0,0 +1,72 @@
|
||||
integer listen_chan = 1347453612;
|
||||
integer listenHandle;
|
||||
float sfx_vol = 1.0;
|
||||
integer timer_toggle = 0;
|
||||
float blink_timer = 0.1;
|
||||
integer blinker_face = 2;
|
||||
vector blink_working_a = <1.000, 0.255, 0.212>;
|
||||
vector blink_working_b = <0.067, 0.067, 0.067>;
|
||||
vector blink_live = <1.000, 0.255, 0.212>;
|
||||
vector blink_free = <0.180, 0.800, 0.251>;
|
||||
|
||||
default
|
||||
{
|
||||
state_entry()
|
||||
{
|
||||
listenHandle = llListen(listen_chan, "", NULL_KEY, "");
|
||||
integer perm = llGetPermissions();
|
||||
llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION | PERMISSION_TAKE_CONTROLS);
|
||||
}
|
||||
|
||||
on_rez(integer start_param) {
|
||||
llResetScript();
|
||||
}
|
||||
|
||||
listen(integer channel, string name, key id, string message)
|
||||
{
|
||||
integer perm = llGetPermissions();
|
||||
if (message == "obey") {
|
||||
llSetTimerEvent(blink_timer);
|
||||
llOwnerSay("Obey");
|
||||
llLoopSound("leccy", sfx_vol);
|
||||
if(PERMISSION_TRIGGER_ANIMATION & perm) {
|
||||
llStartAnimation("zap_hold");
|
||||
}
|
||||
if(PERMISSION_TAKE_CONTROLS & perm) {
|
||||
llTakeControls(CONTROL_FWD | CONTROL_BACK | CONTROL_LEFT | CONTROL_RIGHT | CONTROL_ROT_LEFT | CONTROL_ROT_RIGHT |
|
||||
CONTROL_UP | CONTROL_DOWN | CONTROL_LBUTTON | CONTROL_ML_LBUTTON, TRUE, FALSE);
|
||||
}
|
||||
} else if (message == "obey_rel") {
|
||||
llOwnerSay("Obey!!");
|
||||
if(PERMISSION_TRIGGER_ANIMATION & perm) {
|
||||
llStartAnimation("zap_release");
|
||||
llStopAnimation("zap_hold");
|
||||
}
|
||||
llSetTimerEvent(0.0);
|
||||
llSetColor(blink_live, blinker_face);
|
||||
llStopSound();
|
||||
} else if (message == "release") {
|
||||
llOwnerSay("Release");
|
||||
if(PERMISSION_TRIGGER_ANIMATION & perm) {
|
||||
llStopAnimation("zap_hold");
|
||||
llStopAnimation("zap_release");
|
||||
}
|
||||
if(PERMISSION_TAKE_CONTROLS & perm) {
|
||||
llTakeControls(CONTROL_FWD | CONTROL_BACK | CONTROL_LEFT | CONTROL_RIGHT | CONTROL_ROT_LEFT | CONTROL_ROT_RIGHT |
|
||||
CONTROL_UP | CONTROL_DOWN | CONTROL_LBUTTON | CONTROL_ML_LBUTTON, TRUE, TRUE);
|
||||
}
|
||||
llSetColor(blink_free, blinker_face);
|
||||
}
|
||||
}
|
||||
|
||||
timer() {
|
||||
if (timer_toggle == 0) {
|
||||
llSetColor(blink_working_a, blinker_face);
|
||||
timer_toggle = 1;
|
||||
} else if (timer_toggle == 1) {
|
||||
llSetColor(blink_working_b, blinker_face);
|
||||
timer_toggle = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user