LSO_Enums.cs 17 KB

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