Change EEP on touch or collision
Hello,
I am trying to make (a touchable or walkable) prim that will change the EEP for the agent interacting with it.
I tried this script but it does simply nothing.
Does anyone has a working script or a suggestion, please?

string daycycle_a = "3545d068-b539-4f55-9687-2d33e1762eb4";
string daycycle_b = "19d7a2a7-e10a-451f-9064-0e2f426f21f1";
integer transition = 1;
integer switch;

default
{
state_entry()
{
llSay(PUBLIC_CHANNEL, "Touch to see osReplaceAgentEnvironment usage.");
llSay(PUBLIC_CHANNEL, "Transition: " + (string)transition + " second(s).");
}

touch_start(integer number)
{
key agentKey = llDetectedKey(0);

if (llGetAgentSize(agentKey) != ZERO_VECTOR)
{
integer result;

if (switch = !switch)
{
result = osReplaceAgentEnvironment(agentKey, transition, daycycle_a);
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "daycycle_a: " + daycycle_a);
}

else
{
result = osReplaceAgentEnvironment(agentKey, transition, daycycle_b);
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "daycycle_b: " + daycycle_b);
}

if (daycycle_a == "" || daycycle_a == NULL_KEY || daycycle_b == "" || daycycle_b == "")
{
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "The normal environment for the parcel or region has been selected.");
}

if (result > 0)
{
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "Agent environment replaced with success!");
}

else if (result < 0)
{
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "Agent environment replaced without success!");
}
}

else
{
llInstantMessage(agentKey, "You need to be in the same region to use this function ...");
}
}
}

Kelso.Uxlay: Hello Cherry - The script works for me, but the viewer needs to be set to shared environmental settings. The script does nothing when the agent is using a viewer local environment. 4 months ago
Hello,
I am trying to make (a touchable or walkable) prim that will change the EEP for the agent interacting with it.
I tried this script but it does simply nothing.
Does anyone has a working script or a suggestion, please?

string daycycle_a = "3545d068-b539-4f55-9687-2d33e1762eb4";
string daycycle_b = "19d7a2a7-e10a-451f-9064-0e2f426f21f1";
integer transition = 1;
integer switch;

default
{
state_entry()
{
llSay(PUBLIC_CHANNEL, "Touch to see osReplaceAgentEnvironment usage.");
llSay(PUBLIC_CHANNEL, "Transition: " + (string)transition + " second(s).");
}

touch_start(integer number)
{
key agentKey = llDetectedKey(0);

if (llGetAgentSize(agentKey) != ZERO_VECTOR)
{
integer result;

if (switch = !switch)
{
result = osReplaceAgentEnvironment(agentKey, transition, daycycle_a);
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "daycycle_a: " + daycycle_a);
}

else
{
result = osReplaceAgentEnvironment(agentKey, transition, daycycle_b);
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "daycycle_b: " + daycycle_b);
}

if (daycycle_a == "" || daycycle_a == NULL_KEY || daycycle_b == "" || daycycle_b == "")
{
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "The normal environment for the parcel or region has been selected.");
}

if (result > 0)
{
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "Agent environment replaced with success!");
}

else if (result < 0)
{
llRegionSayTo(agentKey, PUBLIC_CHANNEL, "Agent environment replaced without success!");
}
}

else
{
llInstantMessage(agentKey, "You need to be in the same region to use this function ...");
}
}
}

Jimmy Olsen: Another suggestion, I have on my SIM LIght and Sound Museum, on EEP sector, the EEP HUD where one can change EEP by touch (HUD).. guess it could be used to what u need.. Take a look script inside and ... 4 months ago