krinkec's updates to ll* interface and functions
parent
20b50489c0
commit
16defc30eb
|
@ -24,6 +24,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public float llSin(float f) { return 0; }
|
public float llSin(float f) { return 0; }
|
||||||
public float llCos(float f) { return 0; }
|
public float llCos(float f) { return 0; }
|
||||||
public float llTan(float f) { return 0; }
|
public float llTan(float f) { return 0; }
|
||||||
|
@ -255,116 +256,120 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
|
||||||
public Int32 llOverMyLand(string id) { return 0; }
|
public Int32 llOverMyLand(string id) { return 0; }
|
||||||
public string llGetLandOwnerAt(Axiom.Math.Vector3 pos) { return ""; }
|
public string llGetLandOwnerAt(Axiom.Math.Vector3 pos) { return ""; }
|
||||||
public string llGetNotecardLine(string name, Int32 line) { return ""; }
|
public string llGetNotecardLine(string name, Int32 line) { return ""; }
|
||||||
public void llGetAgentSize() { }
|
public Axiom.Math.Vector3 llGetAgentSize(string id) { return new Axiom.Math.Vector3(); }
|
||||||
public void llSameGroup() { }
|
public Int32 llSameGroup(string agent) { return 0; }
|
||||||
public void llUnSit() { }
|
public void llUnSit(string id) { }
|
||||||
public void llGroundSlope() { }
|
public Axiom.Math.Vector3 llGroundSlope(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); }
|
||||||
public void llGroundNormal() { }
|
public Axiom.Math.Vector3 llGroundNormal(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); }
|
||||||
public void llGroundContour() { }
|
public Axiom.Math.Vector3 llGroundContour(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); }
|
||||||
public void llGetAttached() { }
|
public Int32 llGetAttached() { return 0; }
|
||||||
public void llGetFreeMemory() { }
|
public Int32 llGetFreeMemory() { return 0; }
|
||||||
public void llGetRegionName() { }
|
public string llGetRegionName() { return ""; }
|
||||||
public void llGetRegionTimeDilation() { }
|
public float llGetRegionTimeDilation() { return 0; }
|
||||||
public void llGetRegionFPS() { }
|
public float llGetRegionFPS() { return 0; }
|
||||||
public void llParticleSystem() { }
|
public void llParticleSystem(List<Object> rules) { }
|
||||||
public void llGroundRepel() { }
|
public void llGroundRepel(float height, Int32 water, float tau) { }
|
||||||
public void llGiveInventoryList() { }
|
public void llGiveInventoryList() { }
|
||||||
public void llSetVehicleType() { }
|
public void llSetVehicleType(Int32 type) { }
|
||||||
public void llSetVehicleFloatParam() { }
|
public void llSetVehicleFloatParam(Int32 param, float value) { }
|
||||||
public void llSetVehicleVectorParam() { }
|
public void llSetVehicleVectorParam(Int32 param, Axiom.Math.Vector3 vec) { }
|
||||||
public void llSetVehicleRotationParam() { }
|
public void llSetVehicleRotationParam(Int32 param, Axiom.Math.Quaternion rot) { }
|
||||||
public void llSetVehicleFlags() { }
|
public void llSetVehicleFlags(Int32 flags) { }
|
||||||
public void llRemoveVehicleFlags() { }
|
public void llRemoveVehicleFlags(Int32 flags) { }
|
||||||
public void llSitTarget() { }
|
public void llSitTarget(Axiom.Math.Vector3 offset, Axiom.Math.Quaternion rot) { }
|
||||||
public void llAvatarOnSitTarget() { }
|
public string llAvatarOnSitTarget() { return ""; }
|
||||||
public void llAddToLandPassList() { }
|
public void llAddToLandPassList(string avatar, float hours) { }
|
||||||
public void llSetTouchText() { }
|
public void llSetTouchText(string text)
|
||||||
public void llSetSitText() { }
|
{
|
||||||
public void llSetCameraEyeOffset() { }
|
}
|
||||||
public void llSetCameraAtOffset() { }
|
public void llSetSitText(string text)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
public void llSetCameraEyeOffset(Axiom.Math.Vector3 offset) { }
|
||||||
|
public void llSetCameraAtOffset(Axiom.Math.Vector3 offset) { }
|
||||||
public void llDumpList2String() { }
|
public void llDumpList2String() { }
|
||||||
public void llScriptDanger() { }
|
public void llScriptDanger(Axiom.Math.Vector3 pos) { }
|
||||||
public void llDialog() { }
|
public void llDialog() { }
|
||||||
public void llVolumeDetect() { }
|
public void llVolumeDetect(Int32 detect) { }
|
||||||
public void llResetOtherScript() { }
|
public void llResetOtherScript(string name) { }
|
||||||
public void llGetScriptState() { }
|
public Int32 llGetScriptState(string name) { return 0; }
|
||||||
public void llRemoteLoadScript() { }
|
public void llRemoteLoadScript() { }
|
||||||
public void llSetRemoteScriptAccessPin() { }
|
public void llSetRemoteScriptAccessPin(Int32 pin) { }
|
||||||
public void llRemoteLoadScriptPin() { }
|
public void llRemoteLoadScriptPin(string target, string name, Int32 pin, Int32 running, Int32 start_param) { }
|
||||||
public void llOpenRemoteDataChannel() { }
|
public void llOpenRemoteDataChannel() { }
|
||||||
public void llSendRemoteData() { }
|
public string llSendRemoteData(string channel, string dest, Int32 idata, string sdata) { return ""; }
|
||||||
public void llRemoteDataReply() { }
|
public void llRemoteDataReply(string channel, string message_id, string sdata, Int32 idata) { }
|
||||||
public void llCloseRemoteDataChannel() { }
|
public void llCloseRemoteDataChannel(string channel) { }
|
||||||
public void llMD5String() { }
|
public void llMD5String(string src, Int32 nonce) { }
|
||||||
public void llSetPrimitiveParams() { }
|
public void llSetPrimitiveParams() { }
|
||||||
public void llStringToBase64() { }
|
public string llStringToBase64(string str) { return ""; }
|
||||||
public void llBase64ToString() { }
|
public string llBase64ToString(string str) { return ""; }
|
||||||
public void llXorBase64Strings() { }
|
public void llXorBase64Strings() { }
|
||||||
public void llRemoteDataSetRegion() { }
|
public void llRemoteDataSetRegion() { }
|
||||||
public void llLog10() { }
|
public float llLog10(float val) { return 0; }
|
||||||
public void llLog() { }
|
public float llLog(float val) { return 0; }
|
||||||
public void llGetAnimationList() { }
|
public void llGetAnimationList() { }
|
||||||
public void llSetParcelMusicURL() { }
|
public void llSetParcelMusicURL(string url) { }
|
||||||
public void llGetRootPosition() { }
|
public Axiom.Math.Vector3 llGetRootPosition() { return new Axiom.Math.Vector3(); }
|
||||||
public void llGetRootRotation() { }
|
public Axiom.Math.Quaternion llGetRootRotation() { return new Axiom.Math.Quaternion(); }
|
||||||
public void llGetObjectDesc() { }
|
public string llGetObjectDesc() { return ""; }
|
||||||
public void llSetObjectDesc() { }
|
public void llSetObjectDesc(string desc) { }
|
||||||
public void llGetCreator() { }
|
public string llGetCreator() { return ""; }
|
||||||
public void llGetTimestamp() { }
|
public string llGetTimestamp() { return ""; }
|
||||||
public void llSetLinkAlpha() { }
|
public void llSetLinkAlpha(Int32 linknumber, float alpha, Int32 face) { }
|
||||||
public void llGetNumberOfPrims() { }
|
public Int32 llGetNumberOfPrims() { return 0; }
|
||||||
public void llGetNumberOfNotecardLines() { }
|
public string llGetNumberOfNotecardLines(string name) { return ""; }
|
||||||
public void llGetBoundingBox() { }
|
public void llGetBoundingBox() { }
|
||||||
public void llGetGeometricCenter() { }
|
public Axiom.Math.Vector3 llGetGeometricCenter() { return new Axiom.Math.Vector3(); }
|
||||||
public void llGetPrimitiveParams() { }
|
public void llGetPrimitiveParams() { }
|
||||||
public void llIntegerToBase64() { }
|
public string llIntegerToBase64(Int32 number) { return ""; }
|
||||||
public void llBase64ToInteger() { }
|
public Int32 llBase64ToInteger(string str) { return 0; }
|
||||||
public void llGetGMTclock() { }
|
public float llGetGMTclock() { return 0; }
|
||||||
public void llGetSimulatorHostname() { }
|
public string llGetSimulatorHostname() { return ""; }
|
||||||
public void llSetLocalRot() { }
|
public void llSetLocalRot(Axiom.Math.Quaternion rot) { }
|
||||||
public void llParseStringKeepNulls() { }
|
public void llParseStringKeepNulls() { }
|
||||||
public void llRezAtRoot() { }
|
public void llRezAtRoot(string inventory, Axiom.Math.Vector3 position, Axiom.Math.Vector3 velocity, Axiom.Math.Quaternion rot, Int32 param) { }
|
||||||
public void llGetObjectPermMask() { }
|
public Int32 llGetObjectPermMask(Int32 mask) { return 0; }
|
||||||
public void llSetObjectPermMask() { }
|
public void llSetObjectPermMask(Int32 mask, Int32 value) { }
|
||||||
public void llGetInventoryPermMask() { }
|
public void llGetInventoryPermMask(string item, Int32 mask) { }
|
||||||
public void llSetInventoryPermMask() { }
|
public void llSetInventoryPermMask(string item, Int32 mask, Int32 value) { }
|
||||||
public void llGetInventoryCreator() { }
|
public string llGetInventoryCreator(string item) { return ""; }
|
||||||
public void llOwnerSay() { }
|
public void llOwnerSay(string msg) { }
|
||||||
public void llRequestSimulatorData() { }
|
public void llRequestSimulatorData(string simulator, Int32 data) { }
|
||||||
public void llForceMouselook() { }
|
public void llForceMouselook(Int32 mouselook) { }
|
||||||
public void llGetObjectMass() { }
|
public float llGetObjectMass(string id) { return 0; }
|
||||||
public void llListReplaceList() { }
|
public void llListReplaceList() { }
|
||||||
public void llLoadURL() { }
|
public void llLoadURL(string avatar_id, string message, string url) { }
|
||||||
public void llParcelMediaCommandList() { }
|
public void llParcelMediaCommandList() { }
|
||||||
public void llParcelMediaQuery() { }
|
public void llParcelMediaQuery() { }
|
||||||
public void llModPow() { }
|
public Int32 llModPow(Int32 a, Int32 b, Int32 c) { return 0; }
|
||||||
public void llGetInventoryType() { }
|
public Int32 llGetInventoryType(string name) { return 0; }
|
||||||
public void llSetPayPrice() { }
|
public void llSetPayPrice() { }
|
||||||
public void llGetCameraPos() { }
|
public Axiom.Math.Vector3 llGetCameraPos() { return new Axiom.Math.Vector3(); }
|
||||||
public void llGetCameraRot() { }
|
public Axiom.Math.Quaternion llGetCameraRot() { return new Axiom.Math.Quaternion(); }
|
||||||
public void llSetPrimURL() { }
|
public void llSetPrimURL() { }
|
||||||
public void llRefreshPrimURL() { }
|
public void llRefreshPrimURL() { }
|
||||||
public void llEscapeURL() { }
|
public string llEscapeURL(string url) { return ""; }
|
||||||
public void llUnescapeURL() { }
|
public string llUnescapeURL(string url) { return ""; }
|
||||||
public void llMapDestination() { }
|
public void llMapDestination(string simname, Axiom.Math.Vector3 pos, Axiom.Math.Vector3 look_at) { }
|
||||||
public void llAddToLandBanList() { }
|
public void llAddToLandBanList(string avatar, float hours) { }
|
||||||
public void llRemoveFromLandPassList() { }
|
public void llRemoveFromLandPassList(string avatar) { }
|
||||||
public void llRemoveFromLandBanList() { }
|
public void llRemoveFromLandBanList(string avatar) { }
|
||||||
public void llSetCameraParams() { }
|
public void llSetCameraParams() { }
|
||||||
public void llClearCameraParams() { }
|
public void llClearCameraParams() { }
|
||||||
public void llListStatistics() { }
|
public void llListStatistics() { }
|
||||||
public void llGetUnixTime() { }
|
public Int32 llGetUnixTime() { return 0; }
|
||||||
public void llGetParcelFlags() { }
|
public Int32 llGetParcelFlags(Axiom.Math.Vector3 pos) { return 0; }
|
||||||
public void llGetRegionFlags() { }
|
public Int32 llGetRegionFlags() { return 0; }
|
||||||
public void llXorBase64StringsCorrect() { }
|
public string llXorBase64StringsCorrect(string str1, string str2) { return ""; }
|
||||||
public void llHTTPRequest() { }
|
public void llHTTPRequest() { }
|
||||||
public void llResetLandBanList() { }
|
public void llResetLandBanList() { }
|
||||||
public void llResetLandPassList() { }
|
public void llResetLandPassList() { }
|
||||||
public void llGetParcelPrimCount() { }
|
public Int32 llGetParcelPrimCount(Axiom.Math.Vector3 pos, Int32 category, Int32 sim_wide) { return 0; }
|
||||||
public void llGetParcelPrimOwners() { }
|
public void llGetParcelPrimOwners() { }
|
||||||
public void llGetObjectPrimCount() { }
|
public Int32 llGetObjectPrimCount(string object_id) { return 0; }
|
||||||
public void llGetParcelMaxPrims() { }
|
public Int32 llGetParcelMaxPrims(Axiom.Math.Vector3 pos, Int32 sim_wide) { return 0; }
|
||||||
public void llGetParcelDetails() { }
|
public List<string> llGetParcelDetails(Axiom.Math.Vector3 pos, List<string> param) { return new List<string>(); }
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -394,115 +394,208 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler
|
||||||
string llGetLandOwnerAt(Axiom.Math.Vector3 pos);
|
string llGetLandOwnerAt(Axiom.Math.Vector3 pos);
|
||||||
//wiki: key llGetNotecardLine(string name, integer line)
|
//wiki: key llGetNotecardLine(string name, integer line)
|
||||||
string llGetNotecardLine(string name, Int32 line);
|
string llGetNotecardLine(string name, Int32 line);
|
||||||
void llGetAgentSize();
|
//wiki: vector llGetAgentSize(key id)
|
||||||
void llSameGroup();
|
Axiom.Math.Vector3 llGetAgentSize(string id);
|
||||||
void llUnSit();
|
//wiki: integer llSameGroup(key agent)
|
||||||
void llGroundSlope();
|
Int32 llSameGroup(string agent);
|
||||||
void llGroundNormal();
|
//wiki: llUnSit(key id)
|
||||||
void llGroundContour();
|
void llUnSit(string id);
|
||||||
void llGetAttached();
|
//wiki: vector llGroundSlope(vector offset)
|
||||||
void llGetFreeMemory();
|
Axiom.Math.Vector3 llGroundSlope(Axiom.Math.Vector3 offset);
|
||||||
void llGetRegionName();
|
//wiki: vector llGroundNormal(vector offset)
|
||||||
void llGetRegionTimeDilation();
|
Axiom.Math.Vector3 llGroundNormal(Axiom.Math.Vector3 offset);
|
||||||
void llGetRegionFPS();
|
//wiki: vector llGroundContour(vector offset)
|
||||||
void llParticleSystem();
|
Axiom.Math.Vector3 llGroundContour(Axiom.Math.Vector3 offset);
|
||||||
void llGroundRepel();
|
//wiki: integer llGetAttached()
|
||||||
|
Int32 llGetAttached();
|
||||||
|
//wiki: integer llGetFreeMemory()
|
||||||
|
Int32 llGetFreeMemory();
|
||||||
|
//wiki: string llGetRegionName()
|
||||||
|
string llGetRegionName();
|
||||||
|
//wiki: float llGetRegionTimeDilation()
|
||||||
|
float llGetRegionTimeDilation();
|
||||||
|
//wiki: float llGetRegionFPS()
|
||||||
|
float llGetRegionFPS();
|
||||||
|
//wiki: llParticleSystem(List<Object> rules
|
||||||
|
void llParticleSystem(List<Object> rules);
|
||||||
|
//wiki: llGroundRepel(float height, integer water, float tau)
|
||||||
|
void llGroundRepel(float height, Int32 water, float tau);
|
||||||
void llGiveInventoryList();
|
void llGiveInventoryList();
|
||||||
void llSetVehicleType();
|
//wiki: llSetVehicleType(integer type)
|
||||||
void llSetVehicleFloatParam();
|
void llSetVehicleType(Int32 type);
|
||||||
void llSetVehicleVectorParam();
|
//wiki: llSetVehicleFloatParam(integer param, float value)
|
||||||
void llSetVehicleRotationParam();
|
void llSetVehicleFloatParam(Int32 param, float value);
|
||||||
void llSetVehicleFlags();
|
//wiki: llSetVehicleVectorParam(integer param, vector vec)
|
||||||
void llRemoveVehicleFlags();
|
void llSetVehicleVectorParam(Int32 param, Axiom.Math.Vector3 vec);
|
||||||
void llSitTarget();
|
//wiki: llSetVehicleRotationParam(integer param, rotation rot)
|
||||||
void llAvatarOnSitTarget();
|
void llSetVehicleRotationParam(Int32 param, Axiom.Math.Quaternion rot);
|
||||||
void llAddToLandPassList();
|
//wiki: llSetVehicleFlags(integer flags)
|
||||||
void llSetTouchText();
|
void llSetVehicleFlags(Int32 flags);
|
||||||
void llSetSitText();
|
//wiki: llRemoveVehicleFlags(integer flags)
|
||||||
void llSetCameraEyeOffset();
|
void llRemoveVehicleFlags(Int32 flags);
|
||||||
void llSetCameraAtOffset();
|
//wiki: llSitTarget(vector offset, rotation rot)
|
||||||
|
void llSitTarget(Axiom.Math.Vector3 offset, Axiom.Math.Quaternion rot);
|
||||||
|
//wiki key llAvatarOnSitTarget()
|
||||||
|
string llAvatarOnSitTarget();
|
||||||
|
//wiki: llAddToLandPassList(key avatar, float hours)
|
||||||
|
void llAddToLandPassList(string avatar, float hours);
|
||||||
|
//wiki: llSetTouchText(string text)
|
||||||
|
void llSetTouchText(string text);
|
||||||
|
//wiki: llSetSitText(string text)
|
||||||
|
void llSetSitText(string text);
|
||||||
|
//wiki: llSetCameraEyeOffset(vector offset)
|
||||||
|
void llSetCameraEyeOffset(Axiom.Math.Vector3 offset);
|
||||||
|
//wiki: llSeteCameraAtOffset(vector offset)
|
||||||
|
void llSetCameraAtOffset(Axiom.Math.Vector3 offset);
|
||||||
void llDumpList2String();
|
void llDumpList2String();
|
||||||
void llScriptDanger();
|
//wiki: integer llScriptDanger(vector pos)
|
||||||
|
void llScriptDanger(Axiom.Math.Vector3 pos);
|
||||||
void llDialog();
|
void llDialog();
|
||||||
void llVolumeDetect();
|
//wiki: llVolumeDetect(integer detect)
|
||||||
void llResetOtherScript();
|
void llVolumeDetect(Int32 detect);
|
||||||
void llGetScriptState();
|
//wiki: llResetOtherScript(string name)
|
||||||
|
void llResetOtherScript(string name);
|
||||||
|
//wiki: integer llGetScriptState(string name)
|
||||||
|
Int32 llGetScriptState(string name);
|
||||||
|
//wiki: (deprecated)
|
||||||
void llRemoteLoadScript();
|
void llRemoteLoadScript();
|
||||||
void llSetRemoteScriptAccessPin();
|
//wiki: llSetRemoteScriptAccessPin(integer pin)
|
||||||
void llRemoteLoadScriptPin();
|
void llSetRemoteScriptAccessPin(Int32 pin);
|
||||||
|
//wiki: llRemoteLoadScriptPin(key target, string name, integer pin, integer running, integer start_param)
|
||||||
|
void llRemoteLoadScriptPin(string target, string name, Int32 pin, Int32 running, Int32 start_param);
|
||||||
|
//wiki: llOpenRemoteDataChannel()
|
||||||
void llOpenRemoteDataChannel();
|
void llOpenRemoteDataChannel();
|
||||||
void llSendRemoteData();
|
//wiki: key llSendRemoteData(key channel, string dest, integer idata, string sdata)
|
||||||
void llRemoteDataReply();
|
string llSendRemoteData(string channel, string dest, Int32 idata, string sdata);
|
||||||
void llCloseRemoteDataChannel();
|
//wiki: llRemoteDataReply(key channel, key message_id, string sdata, integer idata)
|
||||||
void llMD5String();
|
void llRemoteDataReply(string channel, string message_id, string sdata, Int32 idata);
|
||||||
|
//wiki: llCloseRemoteDataChannel(key channel)
|
||||||
|
void llCloseRemoteDataChannel(string channel);
|
||||||
|
//wiki: string llMD5String(string src, integer nonce)
|
||||||
|
void llMD5String(string src, Int32 nonce);
|
||||||
void llSetPrimitiveParams();
|
void llSetPrimitiveParams();
|
||||||
void llStringToBase64();
|
//wiki: string llStringToBase64(string str)
|
||||||
void llBase64ToString();
|
string llStringToBase64(string str);
|
||||||
|
//wiki: string llBase64ToString(string str)
|
||||||
|
string llBase64ToString(string str);
|
||||||
|
//wiki: (deprecated)
|
||||||
void llXorBase64Strings();
|
void llXorBase64Strings();
|
||||||
|
//wiki: llRemoteDataSetRegion()
|
||||||
void llRemoteDataSetRegion();
|
void llRemoteDataSetRegion();
|
||||||
void llLog10();
|
//wiki: float llLog10(float val)
|
||||||
void llLog();
|
float llLog10(float val);
|
||||||
|
//wiki: float llLog(float val)
|
||||||
|
float llLog(float val);
|
||||||
void llGetAnimationList();
|
void llGetAnimationList();
|
||||||
void llSetParcelMusicURL();
|
//wiki: llSetParcelMusicURL(string url)
|
||||||
void llGetRootPosition();
|
void llSetParcelMusicURL(string url);
|
||||||
void llGetRootRotation();
|
//wiki: vector llGetRootPosition()
|
||||||
void llGetObjectDesc();
|
Axiom.Math.Vector3 llGetRootPosition();
|
||||||
void llSetObjectDesc();
|
//wiki: rotation llGetRootRotation()
|
||||||
void llGetCreator();
|
Axiom.Math.Quaternion llGetRootRotation();
|
||||||
void llGetTimestamp();
|
//wiki: string llGetObjectDesc()
|
||||||
void llSetLinkAlpha();
|
string llGetObjectDesc();
|
||||||
void llGetNumberOfPrims();
|
//wiki: llSetObjectDesc(string desc)
|
||||||
void llGetNumberOfNotecardLines();
|
void llSetObjectDesc(string desc);
|
||||||
|
//wiki: key llGetCreator()
|
||||||
|
string llGetCreator();
|
||||||
|
//wiki: string llGetTimestamp()
|
||||||
|
string llGetTimestamp();
|
||||||
|
//wiki: llSetLinkAlpha(integer linknumber, float alpha, integer face)
|
||||||
|
void llSetLinkAlpha(Int32 linknumber, float alpha, Int32 face);
|
||||||
|
//wiki: integer llGetNumberOfPrims()
|
||||||
|
Int32 llGetNumberOfPrims();
|
||||||
|
//wiki: key llGetNumberOfNotecardLines(string name)
|
||||||
|
string llGetNumberOfNotecardLines(string name);
|
||||||
void llGetBoundingBox();
|
void llGetBoundingBox();
|
||||||
void llGetGeometricCenter();
|
//wiki: vector llGetGeometricCenter()
|
||||||
|
Axiom.Math.Vector3 llGetGeometricCenter();
|
||||||
void llGetPrimitiveParams();
|
void llGetPrimitiveParams();
|
||||||
void llIntegerToBase64();
|
//wiki: string llIntegerToBase64(integer number)
|
||||||
void llBase64ToInteger();
|
string llIntegerToBase64(Int32 number);
|
||||||
void llGetGMTclock();
|
//wiki integer llBase64ToInteger(string str)
|
||||||
void llGetSimulatorHostname();
|
Int32 llBase64ToInteger(string str);
|
||||||
void llSetLocalRot();
|
//wiki: float llGetGMTclock()
|
||||||
|
float llGetGMTclock();
|
||||||
|
//wiki: string llGetSimulatorHostname()
|
||||||
|
string llGetSimulatorHostname();
|
||||||
|
//llSetLocalRot(rotation rot)
|
||||||
|
void llSetLocalRot(Axiom.Math.Quaternion rot);
|
||||||
void llParseStringKeepNulls();
|
void llParseStringKeepNulls();
|
||||||
void llRezAtRoot();
|
//wiki: llRezAtRoot(string inventory, vector position, vector velocity, rotation rot, integer param)
|
||||||
void llGetObjectPermMask();
|
void llRezAtRoot(string inventory, Axiom.Math.Vector3 position, Axiom.Math.Vector3 velocity, Axiom.Math.Quaternion rot, Int32 param);
|
||||||
void llSetObjectPermMask();
|
//wiki: integer llGetObjectPermMask(integer mask)
|
||||||
void llGetInventoryPermMask();
|
Int32 llGetObjectPermMask(Int32 mask);
|
||||||
void llSetInventoryPermMask();
|
//wiki: llSetObjectPermMask(integer mask, integer value)
|
||||||
void llGetInventoryCreator();
|
void llSetObjectPermMask(Int32 mask, Int32 value);
|
||||||
void llOwnerSay();
|
//wiki integer llGetInventoryPermMask(string item, integer mask)
|
||||||
void llRequestSimulatorData();
|
void llGetInventoryPermMask(string item, Int32 mask);
|
||||||
void llForceMouselook();
|
//wiki: llSetInventoryPermMask(string item, integer mask, integer value)
|
||||||
void llGetObjectMass();
|
void llSetInventoryPermMask(string item, Int32 mask, Int32 value);
|
||||||
|
//wiki: key llGetInventoryCreator(string item)
|
||||||
|
string llGetInventoryCreator(string item);
|
||||||
|
//wiki: llOwnerSay(string msg)
|
||||||
|
void llOwnerSay(string msg);
|
||||||
|
//wiki: key llRequestSimulatorData(string simulator, integer data)
|
||||||
|
void llRequestSimulatorData(string simulator, Int32 data);
|
||||||
|
//wiki: llForceMouselook(integer mouselook)
|
||||||
|
void llForceMouselook(Int32 mouselook);
|
||||||
|
//wiki: float llGetObjectMass(key id)
|
||||||
|
float llGetObjectMass(string id);
|
||||||
void llListReplaceList();
|
void llListReplaceList();
|
||||||
void llLoadURL();
|
//wiki: llLoadURL(key avatar_id, string message, string url)
|
||||||
|
void llLoadURL(string avatar_id, string message, string url);
|
||||||
void llParcelMediaCommandList();
|
void llParcelMediaCommandList();
|
||||||
void llParcelMediaQuery();
|
void llParcelMediaQuery();
|
||||||
void llModPow();
|
//wiki integer llModPow(integer a, integer b, integer c)
|
||||||
void llGetInventoryType();
|
Int32 llModPow(Int32 a, Int32 b, Int32 c);
|
||||||
|
//wiki: integer llGetInventoryType(string name)
|
||||||
|
Int32 llGetInventoryType(string name);
|
||||||
void llSetPayPrice();
|
void llSetPayPrice();
|
||||||
void llGetCameraPos();
|
//wiki: vector llGetCameraPos()
|
||||||
void llGetCameraRot();
|
Axiom.Math.Vector3 llGetCameraPos();
|
||||||
|
//wiki rotation llGetCameraRot()
|
||||||
|
Axiom.Math.Quaternion llGetCameraRot();
|
||||||
|
//wiki: (deprecated)
|
||||||
void llSetPrimURL();
|
void llSetPrimURL();
|
||||||
|
//wiki: (deprecated)
|
||||||
void llRefreshPrimURL();
|
void llRefreshPrimURL();
|
||||||
void llEscapeURL();
|
//wiki: string llEscapeURL(string url)
|
||||||
void llUnescapeURL();
|
string llEscapeURL(string url);
|
||||||
void llMapDestination();
|
//wiki: string llUnescapeURL(string url)
|
||||||
void llAddToLandBanList();
|
string llUnescapeURL(string url);
|
||||||
void llRemoveFromLandPassList();
|
//wiki: llMapDestination(string simname, vector pos, vector look_at)
|
||||||
void llRemoveFromLandBanList();
|
void llMapDestination(string simname, Axiom.Math.Vector3 pos, Axiom.Math.Vector3 look_at);
|
||||||
|
//wiki: llAddToLandBanList(key avatar, float hours)
|
||||||
|
void llAddToLandBanList(string avatar, float hours);
|
||||||
|
//wiki: llRemoveFromLandPassList(key avatar)
|
||||||
|
void llRemoveFromLandPassList(string avatar);
|
||||||
|
//wiki: llRemoveFromLandBanList(key avatar)
|
||||||
|
void llRemoveFromLandBanList(string avatar);
|
||||||
void llSetCameraParams();
|
void llSetCameraParams();
|
||||||
void llClearCameraParams();
|
void llClearCameraParams();
|
||||||
void llListStatistics();
|
void llListStatistics();
|
||||||
void llGetUnixTime();
|
//wiki: integer llGetUnixTime()
|
||||||
void llGetParcelFlags();
|
Int32 llGetUnixTime();
|
||||||
void llGetRegionFlags();
|
//wiki: integer llGetParcelFlags(vector pos)
|
||||||
void llXorBase64StringsCorrect();
|
Int32 llGetParcelFlags(Axiom.Math.Vector3 pos);
|
||||||
|
//wiki: integer llGetRegionFlags()
|
||||||
|
Int32 llGetRegionFlags();
|
||||||
|
//wiki: string llXorBase64StringsCorrect(string str1, string str2)
|
||||||
|
string llXorBase64StringsCorrect(string str1, string str2);
|
||||||
void llHTTPRequest();
|
void llHTTPRequest();
|
||||||
|
//wiki: llResetLandBanList()
|
||||||
void llResetLandBanList();
|
void llResetLandBanList();
|
||||||
|
//wiki: llResetLandPassList()
|
||||||
void llResetLandPassList();
|
void llResetLandPassList();
|
||||||
void llGetParcelPrimCount();
|
//wiki integer llGetParcelPrimCount(vector pos, integer category, integer sim_wide)
|
||||||
|
Int32 llGetParcelPrimCount(Axiom.Math.Vector3 pos, Int32 category, Int32 sim_wide);
|
||||||
void llGetParcelPrimOwners();
|
void llGetParcelPrimOwners();
|
||||||
void llGetObjectPrimCount();
|
//wiki: integer llGetObjectPrimCount(key object_id)
|
||||||
void llGetParcelMaxPrims();
|
Int32 llGetObjectPrimCount(string object_id);
|
||||||
void llGetParcelDetails();
|
//wiki: integer llGetParcelMaxPrims( vector pos, integer sim_wide )
|
||||||
|
Int32 llGetParcelMaxPrims(Axiom.Math.Vector3 pos, Int32 sim_wide);
|
||||||
|
//wiki list llGetParcelDetails(vector pos, list params)
|
||||||
|
List<string> llGetParcelDetails(Axiom.Math.Vector3 pos, List<string> param);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,10 @@ using System.Reflection;
|
||||||
|
|
||||||
namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// EventQueueManager handles event queues
|
||||||
|
/// Events are queued and executed in separate thread
|
||||||
|
/// </summary>
|
||||||
class EventQueueManager
|
class EventQueueManager
|
||||||
{
|
{
|
||||||
private Thread EventQueueThread;
|
private Thread EventQueueThread;
|
||||||
|
|
|
@ -32,11 +32,11 @@ using System.Text;
|
||||||
|
|
||||||
namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// This is the root object for ScriptEngine
|
||||||
|
/// </summary>
|
||||||
public class ScriptEngine : OpenSim.Region.Environment.Scenes.Scripting.ScriptEngineInterface
|
public class ScriptEngine : OpenSim.Region.Environment.Scenes.Scripting.ScriptEngineInterface
|
||||||
{
|
{
|
||||||
//
|
|
||||||
// This is the root object for ScriptEngine
|
|
||||||
//
|
|
||||||
|
|
||||||
internal OpenSim.Region.Environment.Scenes.Scene World;
|
internal OpenSim.Region.Environment.Scenes.Scene World;
|
||||||
internal EventManager myEventManager; // Handles and queues incoming events from OpenSim
|
internal EventManager myEventManager; // Handles and queues incoming events from OpenSim
|
||||||
|
|
|
@ -34,6 +34,11 @@ using System.Reflection;
|
||||||
|
|
||||||
namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Loads scripts
|
||||||
|
/// Compiles them if necessary
|
||||||
|
/// Execute functions for EventQueueManager
|
||||||
|
/// </summary>
|
||||||
class ScriptManager
|
class ScriptManager
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -106,51 +111,63 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
||||||
|
|
||||||
// We will initialize and start the script.
|
// We will initialize and start the script.
|
||||||
// It will be up to the script itself to hook up the correct events.
|
// It will be up to the script itself to hook up the correct events.
|
||||||
string FileName;
|
string FileName = "";
|
||||||
|
|
||||||
// * Fetch script from server
|
try
|
||||||
// DEBUG - ScriptID is an actual filename during debug
|
|
||||||
// (therefore we can also check type by looking at extension)
|
|
||||||
FileName = ScriptID;
|
|
||||||
|
|
||||||
// * Does script need compile? Send it to LSL compiler first. (TODO: Use (and clean) compiler cache)
|
|
||||||
//myScriptEngine.m_logger.Verbose("ScriptEngine", "ScriptManager Script extension: " + System.IO.Path.GetExtension(FileName).ToLower());
|
|
||||||
switch (System.IO.Path.GetExtension(FileName).ToLower())
|
|
||||||
{
|
{
|
||||||
case ".txt":
|
|
||||||
case ".lsl":
|
|
||||||
case ".cs":
|
// * Fetch script from server
|
||||||
myScriptEngine.m_logger.Verbose("ScriptEngine", "ScriptManager Script is CS/LSL, compiling to .Net Assembly");
|
// DEBUG - ScriptID is an actual filename during debug
|
||||||
// Create a new instance of the compiler (currently we don't want reuse)
|
// (therefore we can also check type by looking at extension)
|
||||||
OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler LSLCompiler = new OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler();
|
FileName = ScriptID;
|
||||||
// Compile
|
|
||||||
FileName = LSLCompiler.Compile(FileName);
|
// * Does script need compile? Send it to LSL compiler first. (TODO: Use (and clean) compiler cache)
|
||||||
break;
|
//myScriptEngine.m_logger.Verbose("ScriptEngine", "ScriptManager Script extension: " + System.IO.Path.GetExtension(FileName).ToLower());
|
||||||
default:
|
switch (System.IO.Path.GetExtension(FileName).ToLower())
|
||||||
throw new Exception("Unknown script type.");
|
{
|
||||||
|
case ".txt":
|
||||||
|
case ".lsl":
|
||||||
|
case ".cs":
|
||||||
|
myScriptEngine.m_logger.Verbose("ScriptEngine", "ScriptManager Script is CS/LSL, compiling to .Net Assembly");
|
||||||
|
// Create a new instance of the compiler (currently we don't want reuse)
|
||||||
|
OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler LSLCompiler = new OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler();
|
||||||
|
// Compile
|
||||||
|
FileName = LSLCompiler.Compile(FileName);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw new Exception("Unknown script type.");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
myScriptEngine.m_logger.Verbose("ScriptEngine", "Compilation done");
|
||||||
|
// * Insert yield into code
|
||||||
|
FileName = ProcessYield(FileName);
|
||||||
|
|
||||||
|
// * Find next available AppDomain to put it in
|
||||||
|
AppDomain FreeAppDomain = GetFreeAppDomain();
|
||||||
|
|
||||||
|
// * Load and start script
|
||||||
|
//OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO.LSL_BaseClass Script = LoadAndInitAssembly(FreeAppDomain, FileName);
|
||||||
|
OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.LSL_BaseClass Script = LoadAndInitAssembly(FreeAppDomain, FileName);
|
||||||
|
string FullScriptID = ScriptID + "." + ObjectID;
|
||||||
|
// Add it to our temporary active script keeper
|
||||||
|
//Scripts.Add(FullScriptID, Script);
|
||||||
|
SetScript(ObjectID, ScriptID, Script);
|
||||||
|
// We need to give (untrusted) assembly a private instance of BuiltIns
|
||||||
|
// this private copy will contain Read-Only FullScriptID so that it can bring that on to the server whenever needed.
|
||||||
|
//OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL_BuiltIn_Commands_Interface LSLB = new OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL_BuiltIn_Commands_TestImplementation(FullScriptID);
|
||||||
|
|
||||||
|
// Start the script - giving it BuiltIns
|
||||||
|
//myScriptEngine.m_logger.Verbose("ScriptEngine", "ScriptManager initializing script, handing over private builtin command interface");
|
||||||
|
Script.Start(myScriptEngine.World, ScriptID);
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
myScriptEngine.m_logger.Error("ScriptEngine", "Exception loading script \"" + FileName + "\": " + e.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
myScriptEngine.m_logger.Verbose("ScriptEngine", "Compilation done");
|
|
||||||
// * Insert yield into code
|
|
||||||
FileName = ProcessYield(FileName);
|
|
||||||
|
|
||||||
// * Find next available AppDomain to put it in
|
|
||||||
AppDomain FreeAppDomain = GetFreeAppDomain();
|
|
||||||
|
|
||||||
// * Load and start script
|
|
||||||
//OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO.LSL_BaseClass Script = LoadAndInitAssembly(FreeAppDomain, FileName);
|
|
||||||
OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.LSL_BaseClass Script = LoadAndInitAssembly(FreeAppDomain, FileName);
|
|
||||||
string FullScriptID = ScriptID + "." + ObjectID;
|
|
||||||
// Add it to our temporary active script keeper
|
|
||||||
//Scripts.Add(FullScriptID, Script);
|
|
||||||
SetScript(ObjectID, ScriptID, Script);
|
|
||||||
// We need to give (untrusted) assembly a private instance of BuiltIns
|
|
||||||
// this private copy will contain Read-Only FullScriptID so that it can bring that on to the server whenever needed.
|
|
||||||
//OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL_BuiltIn_Commands_Interface LSLB = new OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL_BuiltIn_Commands_TestImplementation(FullScriptID);
|
|
||||||
|
|
||||||
// Start the script - giving it BuiltIns
|
|
||||||
//myScriptEngine.m_logger.Verbose("ScriptEngine", "ScriptManager initializing script, handing over private builtin command interface");
|
|
||||||
Script.Start(myScriptEngine.World, ScriptID);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -222,13 +239,18 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
||||||
OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.LSL_BaseClass Script = myScriptEngine.myScriptManager.GetScript(ObjectID, ScriptID);
|
OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.LSL_BaseClass Script = myScriptEngine.myScriptManager.GetScript(ObjectID, ScriptID);
|
||||||
|
|
||||||
Type type = Script.GetType();
|
Type type = Script.GetType();
|
||||||
//object o = (object)Script;
|
|
||||||
|
|
||||||
//System.Collections.Generic.List<string> Functions = (System.Collections.Generic.List<string>)
|
|
||||||
//Type type = typeof(OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO.LSL_BaseClass);
|
|
||||||
myScriptEngine.m_logger.Verbose("ScriptEngine", "Invoke: \"" + Script.State + "_event_" + FunctionName + "\"");
|
myScriptEngine.m_logger.Verbose("ScriptEngine", "Invoke: \"" + Script.State + "_event_" + FunctionName + "\"");
|
||||||
type.InvokeMember(Script.State + "_event_" + FunctionName, BindingFlags.InvokeMethod, null, Script, args);
|
|
||||||
//System.Collections.Generic.List<string> Functions = (System.Collections.Generic.List<string>)type.InvokeMember("GetFunctions", BindingFlags.InvokeMethod, null, Script, null);
|
try
|
||||||
|
{
|
||||||
|
type.InvokeMember(Script.State + "_event_" + FunctionName, BindingFlags.InvokeMethod, null, Script, args);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
myScriptEngine.m_logger.Error("ScriptEngine", "Exception attempting to executing script function: " + e.ToString());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//foreach (MemberInfo mi in type.GetMembers())
|
//foreach (MemberInfo mi in type.GetMembers())
|
||||||
|
|
Loading…
Reference in New Issue