public bool PostObjectEvent(UUID primID, string name, Object[] p) { Object[] lsl_p = new Object[p.Length]; for (int i = 0; i < p.Length ; i++) { if (p[i] is int) lsl_p[i] = new LSL_Types.LSLInteger((int)p[i]); else if (p[i] is UUID) lsl_p[i] = new LSL_Types.LSLString(UUID.Parse(p[i].ToString()).ToString()); else if (p[i] is string) lsl_p[i] = new LSL_Types.LSLString((string)p[i]); else if (p[i] is Vector3) lsl_p[i] = new LSL_Types.Vector3(((Vector3)p[i]).X, ((Vector3)p[i]).Y, ((Vector3)p[i]).Z); else if (p[i] is Quaternion) lsl_p[i] = new LSL_Types.Quaternion(((Quaternion)p[i]).X, ((Quaternion)p[i]).Y, ((Quaternion)p[i]).Z, ((Quaternion)p[i]).W); else if (p[i] is float) lsl_p[i] = new LSL_Types.LSLFloat((float)p[i]); else lsl_p[i] = p[i]; } return AddToObjectQueue(primID, name, new DetectParams[0], -1, lsl_p); }
public bool PostScriptEvent(UUID itemID, UUID primID, string name, Object[] p) { Object[] lsl_p = new Object[p.Length]; for (int i = 0; i < p.Length ; i++) { if (p[i] is int) lsl_p[i] = new LSL_Types.LSLInteger((int)p[i]); else if (p[i] is UUID) lsl_p[i] = new LSL_Types.LSLString(UUID.Parse(p[i].ToString()).ToString()); else if (p[i] is string) lsl_p[i] = new LSL_Types.LSLString((string)p[i]); else if (p[i] is Vector3) lsl_p[i] = new LSL_Types.Vector3(((Vector3)p[i]).X, ((Vector3)p[i]).Y, ((Vector3)p[i]).Z); else if (p[i] is Quaternion) lsl_p[i] = new LSL_Types.Quaternion(((Quaternion)p[i]).X, ((Quaternion)p[i]).Y, ((Quaternion)p[i]).Z, ((Quaternion)p[i]).W); else if (p[i] is float) lsl_p[i] = new LSL_Types.LSLFloat((float)p[i]); else lsl_p[i] = p[i]; } return PostScriptEvent(itemID, primID, new EventParams(name, lsl_p, new DetectParams[0]), EventPriority.FirstStart); }