Fix a compile issue and reintroduce the "GOD" script option
parent
c9736755d8
commit
f457925f80
|
@ -310,7 +310,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
foreach (string id in ids)
|
foreach (string id in ids)
|
||||||
{
|
{
|
||||||
string current = id.Trim();
|
string current = id.Trim();
|
||||||
if (current.ToUpper() == "PARCEL_GROUP_MEMBER" || current.ToUpper() == "PARCEL_OWNER" || current.ToUpper() == "ESTATE_MANAGER" || current.ToUpper() == "ESTATE_OWNER" || current.ToUpper() == "ACTIVE_GOD" || current.ToUpper() == "GRID_GOD")
|
if (current.ToUpper() == "PARCEL_GROUP_MEMBER" || current.ToUpper() == "PARCEL_OWNER" || current.ToUpper() == "ESTATE_MANAGER" || current.ToUpper() == "ESTATE_OWNER" || current.ToUpper() == "ACTIVE_GOD" || current.ToUpper() == "GRID_GOD" || current.ToUpper() == "GOD")
|
||||||
{
|
{
|
||||||
if (!perms.AllowedOwnerClasses.Contains(current))
|
if (!perms.AllowedOwnerClasses.Contains(current))
|
||||||
perms.AllowedOwnerClasses.Add(current.ToUpper());
|
perms.AllowedOwnerClasses.Add(current.ToUpper());
|
||||||
|
@ -425,6 +425,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Any god may use the function
|
||||||
|
if (m_FunctionPerms[function].AllowedOwnerClasses.Contains("GOD"))
|
||||||
|
{
|
||||||
|
if (World.Permissions.IsAdministrator(ownerID))
|
||||||
|
{
|
||||||
|
return String.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//Only active gods may use the function
|
//Only active gods may use the function
|
||||||
if (m_FunctionPerms[function].AllowedOwnerClasses.Contains("ACTIVE_GOD"))
|
if (m_FunctionPerms[function].AllowedOwnerClasses.Contains("ACTIVE_GOD"))
|
||||||
{
|
{
|
||||||
|
|
|
@ -927,28 +927,28 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
||||||
|
|
||||||
if(e.InnerException != null && e.InnerException is ScriptException)
|
if(e.InnerException != null && e.InnerException is ScriptException)
|
||||||
{
|
{
|
||||||
if (e.InnerException.Message == "Softfail")
|
if (e.InnerException.Message != "Softfail")
|
||||||
return;
|
{
|
||||||
|
string text = e.InnerException.Message +
|
||||||
string text = e.InnerException.Message +
|
"(script: " + ScriptName +
|
||||||
"(script: " + ScriptName +
|
" event: " + data.EventName +
|
||||||
" event: " + data.EventName +
|
" at " + Part.AbsolutePosition + ")";
|
||||||
" at " + Part.AbsolutePosition + ")";
|
if (text.Length > 1000)
|
||||||
if (text.Length > 1000)
|
text = text.Substring(0, 1000);
|
||||||
text = text.Substring(0, 1000);
|
Engine.World.SimChat(Utils.StringToBytes(text),
|
||||||
Engine.World.SimChat(Utils.StringToBytes(text),
|
ChatTypeEnum.DebugChannel, 2147483647,
|
||||||
ChatTypeEnum.DebugChannel, 2147483647,
|
Part.AbsolutePosition,
|
||||||
Part.AbsolutePosition,
|
Part.Name, Part.UUID, false);
|
||||||
Part.Name, Part.UUID, false);
|
m_log.Debug(string.Format(
|
||||||
m_log.Debug(string.Format(
|
"[SCRIPT INSTANCE]: {0} (at event {1}, part {2} {3} at {4} in {5}",
|
||||||
"[SCRIPT INSTANCE]: {0} (at event {1}, part {2} {3} at {4} in {5}",
|
e.InnerException.Message,
|
||||||
e.InnerException.Message,
|
data.EventName,
|
||||||
data.EventName,
|
PrimName,
|
||||||
PrimName,
|
Part.UUID,
|
||||||
Part.UUID,
|
Part.AbsolutePosition,
|
||||||
Part.AbsolutePosition,
|
Part.ParentGroup.Scene.Name));
|
||||||
Part.ParentGroup.Scene.Name));
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue