Artifact ID: | 3c2c2fa9a7c5c0dff8058c5f57c8c52b1326d7c3 |
---|---|
Page Name: | SQL functions |
Date: | 2020-10-20 20:55:35 |
Original User: | anonymous |
Parent: | a3eedcdef30232186bd5006a1ce09ee378addc06 (diff) |
Next | 60024011a50a04e4d917513f99b606cefbabd091 |
This document is a list of the available SQL functions that you can use in the customization of Free Hero Mesh. In addition to the ones listed here, you can also use the core functions, date/time functions, and aggregate functions, of SQLite, as well as any functions defined by extensions. See also: SQL tables.
(Note: This is only a draft and is likely to change in future.)
Asterisks in the headings indicate aggregate functions.
BASENAME()
Returns the base name, which is a copy of the first command-line argument (other than switches).CLASS_DATA(id,info)
Returns data about the class with the given ID number.The second argument can be: 0=class ID number, 1=Temperature, 2=Shape, 7=first image number available in editor (null if none), 12=Misc4, 13=Misc5, 14=Misc6, 15=Misc7, 18=Arrivals, 19=Departures, 32=Busy, 33=Invisible, 34=UserSignal, 35=UserState, 36=KeyCleared, 37=Player, 38=Destroyed, 39=Stealthy, 40=VisualOnly, 64=Density, 65=Volume, 66=Strength, 67=Weight, 69=Height, 70=Climb, 72=Hard(E), 73=Hard(N), 74=Hard(W), 75=Hard(S), 76=Sharp(E), 77=Sharp(N), 78=Sharp(W), 79=Sharp(S), 80=Shape(E), 81=Shape(N), 82=Shape(W), 83=Shape(S), 84=Shovable, 128=fraction of volume, 129=number of user variables, 130=CollisionLayers, 132=Compatible
CVALUE(number)
Returns a 64-bit integer representing a value of type TY_CLASS; the argument is the class number.HEROMESH_ESCAPE(blob)
Converts a unescaped representation of a string with formatting controls into the escaped representation.HEROMESH_TYPE(value)
Given a Hero Mesh value (which is represented in SQL by a 64-bit integer), return a string representing its type. It can be one of:- ???
- class
- number
- object
- sound
- string
HEROMESH_UNESCAPE(text)
Converts a escaped representation of a string with formatting controls into the unescaped representation.LEVEL()
Returns the one-based order number of the current level.LEVEL_CACHEID()
Returns the ID number of the active level file in the user cache table.LEVEL_ID()
Returns the ID number of the current level.LEVEL_TITLE()
Returns the level title as a blob (see formatting controls).LOAD_LEVEL(levelid)
Load a level by ID; returns null. Usable only if the -x switch is used; otherwise it is an error.MODSTATE()
Get the current keyboard modifiers state. It is the sum of the following:- 0x0001: Left shift
- 0x0002: Right shift
- 0x0040: Left control
- 0x0080: Right control
- 0x0100: Left alt
- 0x0200: Right alt
- 0x0400: Left meta
- 0x0800: Right meta
- 0x1000: Num lock
- 0x2000: Caps lock
- 0x4000: Mode