LSO_Enums.cs 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560
  1. /*
  2. * Copyright (c) Contributors, http://opensimulator.org/
  3. * See CONTRIBUTORS.TXT for a full list of copyright holders.
  4. *
  5. * Redistribution and use in source and binary forms, with or without
  6. * modification, are permitted provided that the following conditions are met:
  7. * * Redistributions of source code must retain the above copyright
  8. * notice, this list of conditions and the following disclaimer.
  9. * * Redistributions in binary form must reproduce the above copyright
  10. * notice, this list of conditions and the following disclaimer in the
  11. * documentation and/or other materials provided with the distribution.
  12. * * Neither the name of the OpenSim Project nor the
  13. * names of its contributors may be used to endorse or promote products
  14. * derived from this software without specific prior written permission.
  15. *
  16. * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
  17. * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  18. * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  19. * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
  20. * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  21. * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  22. * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  23. * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  24. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  25. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  26. */
  27. /* Original code: Tedd Hansen */
  28. using System;
  29. namespace OpenSim.Region.ScriptEngine.LSOEngine.LSO
  30. {
  31. public static class LSO_Enums
  32. {
  33. //public System.Collections.Generic.Dictionary<Byte, Type> OpCode_Add_Types;
  34. //LSO_Enums() {
  35. // OpCode_Add_Types.Add(51, typeof(String));
  36. // OpCode_Add_Types.Add(17, typeof(UInt32));
  37. //}
  38. [Serializable]
  39. public enum OpCode_Add_TypeDefs
  40. {
  41. String = 51,
  42. UInt32 = 17
  43. }
  44. [Serializable]
  45. public enum OpCode_Cast_TypeDefs
  46. {
  47. String = 19
  48. }
  49. [Serializable]
  50. public struct Key
  51. {
  52. public string KeyString;
  53. }
  54. [Serializable]
  55. public struct Vector
  56. {
  57. public UInt32 Z;
  58. public UInt32 Y;
  59. public UInt32 X;
  60. }
  61. [Serializable]
  62. public struct Rotation
  63. {
  64. public UInt32 S;
  65. public UInt32 Z;
  66. public UInt32 Y;
  67. public UInt32 X;
  68. }
  69. [Serializable]
  70. public enum Variable_Type_Codes
  71. {
  72. Void = 0,
  73. Integer = 1,
  74. Float = 2,
  75. String = 3,
  76. Key = 4,
  77. Vector = 5,
  78. Rotation = 6,
  79. List = 7,
  80. Null = 8
  81. }
  82. [Serializable]
  83. public enum Event_Mask_Values
  84. {
  85. state_entry = 0,
  86. state_exit = 1,
  87. touch_start = 2,
  88. touch = 3,
  89. touch_end = 4,
  90. collision_start = 5,
  91. collision = 6,
  92. collision_end = 7,
  93. land_collision_start = 8,
  94. land_collision = 9,
  95. land_collision_end = 10,
  96. timer = 11,
  97. listen = 12,
  98. on_rez = 13,
  99. sensor = 14,
  100. no_sensor = 15,
  101. control = 16,
  102. money = 17,
  103. email = 18,
  104. at_target = 19,
  105. not_at_target = 20,
  106. at_rot_target = 21,
  107. not_at_rot_target = 22,
  108. run_time_permissions = 23,
  109. changed = 24,
  110. attach = 25,
  111. dataserver = 26,
  112. link_message = 27,
  113. moving_start = 28,
  114. moving_end = 29,
  115. object_rez = 30,
  116. remote_data = 31,
  117. http_response = 32
  118. }
  119. [Serializable]
  120. public enum Operation_Table
  121. {
  122. NOOP = 0x0,
  123. POP = 0x1,
  124. POPS = 0x2,
  125. POPL = 0x3,
  126. POPV = 0x4,
  127. POPQ = 0x5,
  128. POPARG = 0x6,
  129. POPIP = 0x7,
  130. POPBP = 0x8,
  131. POPSP = 0x9,
  132. POPSLR = 0xa,
  133. DUP = 0x20,
  134. DUPS = 0x21,
  135. DUPL = 0x22,
  136. DUPV = 0x23,
  137. DUPQ = 0x24,
  138. STORE = 0x30,
  139. STORES = 0x31,
  140. STOREL = 0x32,
  141. STOREV = 0x33,
  142. STOREQ = 0x34,
  143. STOREG = 0x35,
  144. STOREGS = 0x36,
  145. STOREGL = 0x37,
  146. STOREGV = 0x38,
  147. STOREGQ = 0x39,
  148. LOADP = 0x3a,
  149. LOADSP = 0x3b,
  150. LOADLP = 0x3c,
  151. LOADVP = 0x3d,
  152. LOADQP = 0x3e,
  153. LOADGP = 0x3f,
  154. LOADGSP = 0x40,
  155. LOADGLP = 0x41,
  156. LOADGVP = 0x42,
  157. LOADGQP = 0x43,
  158. PUSH = 0x50,
  159. PUSHS = 0x51,
  160. PUSHL = 0x52,
  161. PUSHV = 0x53,
  162. PUSHQ = 0x54,
  163. PUSHG = 0x55,
  164. PUSHGS = 0x56,
  165. PUSHGL = 0x57,
  166. PUSHGV = 0x58,
  167. PUSHGQ = 0x59,
  168. PUSHIP = 0x5a,
  169. PUSHBP = 0x5b,
  170. PUSHSP = 0x5c,
  171. PUSHARGB = 0x5d,
  172. PUSHARGI = 0x5e,
  173. PUSHARGF = 0x5f,
  174. PUSHARGS = 0x60,
  175. PUSHARGV = 0x61,
  176. PUSHARGQ = 0x62,
  177. PUSHE = 0x63,
  178. PUSHEV = 0x64,
  179. PUSHEQ = 0x65,
  180. PUSHARGE = 0x66,
  181. ADD = 0x70,
  182. SUB = 0x71,
  183. MUL = 0x72,
  184. DIV = 0x73,
  185. MOD = 0x74,
  186. EQ = 0x75,
  187. NEQ = 0x76,
  188. LEQ = 0x77,
  189. GEQ = 0x78,
  190. LESS = 0x79,
  191. GREATER = 0x7a,
  192. BITAND = 0x7b,
  193. BITOR = 0x7c,
  194. BITXOR = 0x7d,
  195. BOOLAND = 0x7e,
  196. BOOLOR = 0x7f,
  197. NEG = 0x80,
  198. BITNOT = 0x81,
  199. BOOLNOT = 0x82,
  200. JUMP = 0x90,
  201. JUMPIF = 0x91,
  202. JUMPNIF = 0x92,
  203. STATE = 0x93,
  204. CALL = 0x94,
  205. RETURN = 0x95,
  206. CAST = 0xa0,
  207. STACKTOS = 0xb0,
  208. STACKTOL = 0xb1,
  209. PRINT = 0xc0,
  210. CALLLIB = 0xd0,
  211. CALLLIB_TWO_BYTE = 0xd1,
  212. SHL = 0xe0,
  213. SHR = 0xe1
  214. }
  215. [Serializable]
  216. public enum BuiltIn_Functions
  217. {
  218. llSin = 0,
  219. llCos = 1,
  220. llTan = 2,
  221. llAtan2 = 3,
  222. llSqrt = 4,
  223. llPow = 5,
  224. llAbs = 6,
  225. llFabs = 7,
  226. llFrand = 8,
  227. llFloor = 9,
  228. llCeil = 10,
  229. llRound = 11,
  230. llVecMag = 12,
  231. llVecNorm = 13,
  232. llVecDist = 14,
  233. llRot2Euler = 15,
  234. llEuler2Rot = 16,
  235. llAxes2Rot = 17,
  236. llRot2Fwd = 18,
  237. llRot2Left = 19,
  238. llRot2Up = 20,
  239. llRotBetween = 21,
  240. llWhisper = 22,
  241. llSay = 23,
  242. llShout = 24,
  243. llListen = 25,
  244. llListenControl = 26,
  245. llListenRemove = 27,
  246. llSensor = 28,
  247. llSensorRepeat = 29,
  248. llSensorRemove = 30,
  249. llDetectedName = 31,
  250. llDetectedKey = 32,
  251. llDetectedOwner = 33,
  252. llDetectedType = 34,
  253. llDetectedPos = 35,
  254. llDetectedVel = 36,
  255. llDetectedGrab = 37,
  256. llDetectedRot = 38,
  257. llDetectedGroup = 39,
  258. llDetectedLinkNumber = 40,
  259. llDie = 41,
  260. llGround = 42,
  261. llCloud = 43,
  262. llWind = 44,
  263. llSetStatus = 45,
  264. llGetStatus = 46,
  265. llSetScale = 47,
  266. llGetScale = 48,
  267. llSetColor = 49,
  268. llGetAlpha = 50,
  269. llSetAlpha = 51,
  270. llGetColor = 52,
  271. llSetTexture = 53,
  272. llScaleTexture = 54,
  273. llOffsetTexture = 55,
  274. llRotateTexture = 56,
  275. llGetTexture = 57,
  276. llSetPos = 58,
  277. llGetPos = 59,
  278. llGetLocalPos = 60,
  279. llSetRot = 61,
  280. llGetRot = 62,
  281. llGetLocalRot = 63,
  282. llSetForce = 64,
  283. llGetForce = 65,
  284. llTarget = 66,
  285. llTargetRemove = 67,
  286. llRotTarget = 68,
  287. llRotTargetRemove = 69,
  288. llMoveToTarget = 70,
  289. llStopMoveToTarget = 71,
  290. llApplyImpulse = 72,
  291. llApplyRotationalImpulse = 73,
  292. llSetTorque = 74,
  293. llGetTorque = 75,
  294. llSetForceAndTorque = 76,
  295. llGetVel = 77,
  296. llGetAccel = 78,
  297. llGetOmega = 79,
  298. llGetTimeOfDay = 80,
  299. llGetWallclock = 81,
  300. llGetTime = 82,
  301. llResetTime = 83,
  302. llGetAndResetTime = 84,
  303. llSound = 85,
  304. llPlaySound = 86,
  305. llLoopSound = 87,
  306. llLoopSoundMaster = 88,
  307. llLoopSoundSlave = 89,
  308. llPlaySoundSlave = 90,
  309. llTriggerSound = 91,
  310. llStopSound = 92,
  311. llPreloadSound = 93,
  312. llGetSubString = 94,
  313. llDeleteSubString = 95,
  314. llInsertString = 96,
  315. llToUpper = 97,
  316. llToLower = 98,
  317. llGiveMoney = 99,
  318. llMakeExplosion = 100,
  319. llMakeFountain = 101,
  320. llMakeSmoke = 102,
  321. llMakeFire = 103,
  322. llRezObject = 104,
  323. llLookAt = 105,
  324. llStopLookAt = 106,
  325. llSetTimerEvent = 107,
  326. llSleep = 108,
  327. llGetMass = 109,
  328. llCollisionFilter = 110,
  329. llTakeControls = 111,
  330. llReleaseControls = 112,
  331. llAttachToAvatar = 113,
  332. llDetachFromAvatar = 114,
  333. llTakeCamera = 115,
  334. llReleaseCamera = 116,
  335. llGetOwner = 117,
  336. llInstantMessage = 118,
  337. llEmail = 119,
  338. llGetNextEmail = 120,
  339. llGetKey = 121,
  340. llSetBuoyancy = 122,
  341. llSetHoverHeight = 123,
  342. llStopHover = 124,
  343. llMinEventDelay = 125,
  344. llSoundPreload = 126,
  345. llRotLookAt = 127,
  346. llStringLength = 128,
  347. llStartAnimation = 129,
  348. llStopAnimation = 130,
  349. llPointAt = 131,
  350. llStopPointAt = 132,
  351. llTargetOmega = 133,
  352. llGetStartParameter = 134,
  353. llGodLikeRezObject = 135,
  354. llRequestPermissions = 136,
  355. llGetPermissionsKey = 137,
  356. llGetPermissions = 138,
  357. llGetLinkNumber = 139,
  358. llSetLinkColor = 140,
  359. llCreateLink = 141,
  360. llBreakLink = 142,
  361. llBreakAllLinks = 143,
  362. llGetLinkKey = 144,
  363. llGetLinkName = 145,
  364. llGetInventoryNumber = 146,
  365. llGetInventoryName = 147,
  366. llSetScriptState = 148,
  367. llGetEnergy = 149,
  368. llGiveInventory = 150,
  369. llRemoveInventory = 151,
  370. llSetText = 152,
  371. llWater = 153,
  372. llPassTouches = 154,
  373. llRequestAgentData = 155,
  374. llRequestInventoryData = 156,
  375. llSetDamage = 157,
  376. llTeleportAgentHome = 158,
  377. llModifyLand = 159,
  378. llCollisionSound = 160,
  379. llCollisionSprite = 161,
  380. llGetAnimation = 162,
  381. llResetScript = 163,
  382. llMessageLinked = 164,
  383. llPushObject = 165,
  384. llPassCollisions = 166,
  385. llGetScriptName = 167,
  386. llGetNumberOfSides = 168,
  387. llAxisAngle2Rot = 169,
  388. llRot2Axis = 170,
  389. llRot2Angle = 171,
  390. llAcos = 172,
  391. llAsin = 173,
  392. llAngleBetween = 174,
  393. llGetInventoryKey = 175,
  394. llAllowInventoryDrop = 176,
  395. llGetSunDirection = 177,
  396. llGetTextureOffset = 178,
  397. llGetTextureScale = 179,
  398. llGetTextureRot = 180,
  399. llSubStringIndex = 181,
  400. llGetOwnerKey = 182,
  401. llGetCenterOfMass = 183,
  402. llListSort = 184,
  403. llGetListLength = 185,
  404. llList2Integer = 186,
  405. llList2Float = 187,
  406. llList2String = 188,
  407. llList2Key = 189,
  408. llList2Vector = 190,
  409. llList2Rot = 191,
  410. llList2List = 192,
  411. llDeleteSubList = 193,
  412. llGetListEntryType = 194,
  413. llList2CSV = 195,
  414. llCSV2List = 196,
  415. llListRandomize = 197,
  416. llList2ListStrided = 198,
  417. llGetRegionCorner = 199,
  418. llListInsertList = 200,
  419. llListFindList = 201,
  420. llGetObjectName = 202,
  421. llSetObjectName = 203,
  422. llGetDate = 204,
  423. llEdgeOfWorld = 205,
  424. llGetAgentInfo = 206,
  425. llAdjustSoundVolume = 207,
  426. llSetSoundQueueing = 208,
  427. llSetSoundRadius = 209,
  428. llKey2Name = 210,
  429. llSetTextureAnim = 211,
  430. llTriggerSoundLimited = 212,
  431. llEjectFromLand = 213,
  432. llParseString2List = 214,
  433. llOverMyLand = 215,
  434. llGetLandOwnerAt = 216,
  435. llGetNotecardLine = 217,
  436. llGetAgentSize = 218,
  437. llSameGroup = 219,
  438. llUnSit = 220,
  439. llGroundSlope = 221,
  440. llGroundNormal = 222,
  441. llGroundContour = 223,
  442. llGetAttached = 224,
  443. llGetFreeMemory = 225,
  444. llGetRegionName = 226,
  445. llGetRegionTimeDilation = 227,
  446. llGetRegionFPS = 228,
  447. llParticleSystem = 229,
  448. llGroundRepel = 230,
  449. llGiveInventoryList = 231,
  450. llSetVehicleType = 232,
  451. llSetVehicleFloatParam = 233,
  452. llSetVehicleVectorParam = 234,
  453. llSetVehicleRotationParam = 235,
  454. llSetVehicleFlags = 236,
  455. llRemoveVehicleFlags = 237,
  456. llSitTarget = 238,
  457. llAvatarOnSitTarget = 239,
  458. llAddToLandPassList = 240,
  459. llSetTouchText = 241,
  460. llSetSitText = 242,
  461. llSetCameraEyeOffset = 243,
  462. llSetCameraAtOffset = 244,
  463. llDumpList2String = 245,
  464. llScriptDanger = 246,
  465. llDialog = 247,
  466. llVolumeDetect = 248,
  467. llResetOtherScript = 249,
  468. llGetScriptState = 250,
  469. llRemoteLoadScript = 251,
  470. llSetRemoteScriptAccessPin = 252,
  471. llRemoteLoadScriptPin = 253,
  472. llOpenRemoteDataChannel = 254,
  473. llSendRemoteData = 255,
  474. llRemoteDataReply = 256,
  475. llCloseRemoteDataChannel = 257,
  476. llMD5String = 258,
  477. llSetPrimitiveParams = 259,
  478. llStringToBase64 = 260,
  479. llBase64ToString = 261,
  480. llXorBase64Strings = 262,
  481. llRemoteDataSetRegion = 263,
  482. llLog10 = 264,
  483. llLog = 265,
  484. llGetAnimationList = 266,
  485. llSetParcelMusicURL = 267,
  486. llGetRootPosition = 268,
  487. llGetRootRotation = 269,
  488. llGetObjectDesc = 270,
  489. llSetObjectDesc = 271,
  490. llGetCreator = 272,
  491. llGetTimestamp = 273,
  492. llSetLinkAlpha = 274,
  493. llGetNumberOfPrims = 275,
  494. llGetNumberOfNotecardLines = 276,
  495. llGetBoundingBox = 277,
  496. llGetGeometricCenter = 278,
  497. llGetPrimitiveParams = 279,
  498. llIntegerToBase64 = 280,
  499. llBase64ToInteger = 281,
  500. llGetGMTclock = 282,
  501. llGetSimulatorHostname = 283,
  502. llSetLocalRot = 284,
  503. llParseStringKeepNulls = 285,
  504. llRezAtRoot = 286,
  505. llGetObjectPermMask = 287,
  506. llSetObjectPermMask = 288,
  507. llGetInventoryPermMask = 289,
  508. llSetInventoryPermMask = 290,
  509. llGetInventoryCreator = 291,
  510. llOwnerSay = 292,
  511. llRequestSimulatorData = 293,
  512. llForceMouselook = 294,
  513. llGetObjectMass = 295,
  514. llListReplaceList = 296,
  515. llLoadURL = 297,
  516. llParcelMediaCommandList = 298,
  517. llParcelMediaQuery = 299,
  518. llModPow = 300,
  519. llGetInventoryType = 301,
  520. llSetPayPrice = 302,
  521. llGetCameraPos = 303,
  522. llGetCameraRot = 304,
  523. llSetPrimURL = 305,
  524. llRefreshPrimURL = 306,
  525. llEscapeURL = 307,
  526. llUnescapeURL = 308,
  527. llMapDestination = 309,
  528. llAddToLandBanList = 310,
  529. llRemoveFromLandPassList = 311,
  530. llRemoveFromLandBanList = 312,
  531. llSetCameraParams = 313,
  532. llClearCameraParams = 314,
  533. llListStatistics = 315,
  534. llGetUnixTime = 316,
  535. llGetParcelFlags = 317,
  536. llGetRegionFlags = 318,
  537. llXorBase64StringsCorrect = 319,
  538. llHTTPRequest = 320,
  539. llResetLandBanList = 321,
  540. llResetLandPassList = 322,
  541. llGetParcelPrimCount = 323,
  542. llGetParcelPrimOwners = 324,
  543. llGetObjectPrimCount = 325,
  544. llGetParcelMaxPrims = 326,
  545. llGetParcelDetails = 327
  546. }
  547. }
  548. }