-
Notifications
You must be signed in to change notification settings - Fork 7
BitBuffer
Nak edited this page Sep 11, 2022
·
20 revisions
BitBuffers are written in pure Lua, similar to file-objects and store their data in a 32-bit number-array. They offer up to 80x the speed of regular file I/O operations, supports non-byte integers, Float, Double, has multiple additional features and can read/write at the same time.
Returns | Functions | Description |
---|---|---|
BitBuffer | NikNaks.BitBuffer( String/Table data, Bool? little_endian ) | Creates a new BitBuffer. |
BitBuffer | NikNaks.BitBuffer.OpenFile( String fileName, String? gamePath, Bool? lzma, Bool? little_endian ) | Same as file.Open, but returns it as a bitbuffer. little_endian is true by default. |
Number | NikNaks.BitBuffer.StringToInt( String str ) | Takes a string of 1-4 charectors and converts it into a Little-Endian int |
String | NikNaks.BitBuffer.IntToString( Number int ) | Takes an Little-Endian number and converts it into a 4 char-string |
Returns | Functions | Description |
---|---|---|
BitBuffer:WriteUInt( Number int,Number bits ) | Writes an unsigned int | |
Number | BitBuffer:ReadUInt( Number bits ) | Reads an unsigned int |
BitBuffer:WriteInt( Number int,Number bits ) | Writes a signed int | |
Number | BitBuffer:ReadInt( Number bits ) | Reads a signed int |
Returns | Functions | Description |
---|---|---|
BitBuffer:WriteLong( Number num ) | Writes a 4 byte number ( -2147483648 - 2147483647 ) | |
Number | BitBuffer:ReadLong() | Reads a 4 byte number ( -2147483648 - 2147483647 ) |
BitBuffer:WriteShort( Number num ) | Writes a 2 byte number ( -32768 - 32767 ) | |
Number | BitBuffer:ReadShort() | Reads an 2 byte number ( -32768 - 32767 ) |
BitBuffer:WriteSignedByte( Number byte ) | Writes a signed byte ( -128 - 127 ) | |
Number | BitBuffer:ReadSignedByte() | Writes a signed byte ( -128 - 127 ) |
BitBuffer:WriteULong( Number num ) | Writes an unsigned 4 byte number ( 0 - 4294967295 ) | |
Number | BitBuffer:ReadULong() | Reads an unsigned 4 byte number ( 0 - 4294967295 ) |
BitBuffer:WriteUShort( Number num ) | Writes an unsigned 2 byte number ( 0 - 65535 ) | |
Number | BitBuffer:ReadUShort() | Reads an unsigned 2 byte number ( 0 - 65535 ) |
BitBuffer:WriteByte( Number byte ) | Writes a byte ( 0 - 255 ) | |
Number | BitBuffer:ReadByte() | Reads a byte ( 0 - 255 ) |
BitBuffer:WriteNibble( Number num ) | Writes a 4 bit unsigned number ( 0 - 15 ) | |
Number | BitBuffer:ReadNibble() | Reads a 4 bit unsigned number ( 0 - 15 ) |
BitBuffer:WriteSnort( Number num ) | Writes a 2 bit unsigned number ( 0 - 3 ) | |
Number | BitBuffer:ReadSnort() | Reads a 2 bit unsigned number ( 0 - 3 ) |
Returns | Functions | Description |
---|---|---|
BitBuffer:WriteFloat( Number num ) | Writes an IEEE 754 little-endian float | |
Number | BitBuffer:ReadFloat() | Reads an IEEE 754 little-endian float |
BitBuffer:WriteDouble( Number num ) | Writes an IEEE 754 little-endian double | |
Number | BitBuffer:ReadDouble() | Reads an IEEE 754 little-endian double |
Returns | Functions | Description |
---|---|---|
BitBuffer:WriteBoolean( Bool bool ) | Writes a boolean | |
Bool | BitBuffer:ReadBoolean() | Reads a boolean |
BitBuffer:WriteVector( Vector vector ) | Writes a vector | |
Vector | BitBuffer:ReadVector() | Reads a vector |
BitBuffer:WriteString( String str ) | Writes a string. Max string length: 65535 | |
String | BitBuffer:ReadString() | Reads a string. Max string length: 65535 |
BitBuffer:WriteAngle( Angle angle ) | Writes an angle | |
Angle | BitBuffer:ReadAngle() | Reads an angle |
BitBuffer:WriteColor( Color color ) | Writes a 32bit color | |
Color | BitBuffer:ReadColor() | Reads a 32bit color |
BitBuffer:WriteTable( Table tab ) | Writes a table | |
Table | BitBuffer:ReadTable() | Reads a table |
BitBuffer:WriteType( [any] obj ) | Writes a type using a byte as TYPE_ID. | |
[any] | BitBuffer:ReadType() | Reads a type using a byte as TYPE_ID. |
BitBuffer:WriteStringNull( String str ) | Writes a string using a nullbyte at the end. Note: Will remove all nullbytes given. | |
String | BitBuffer:ReadStringNull( Number? maxLength ) | Reads a string using a nullbyte at the end. Note: ReadStringNull is a bit slower than ReadString. |
- BitBuffer
- BSP Parser
- DateTime and Date-Functions
- TimeDelta
-
PathFinding (Coming soon)
- LPathFollower (Coming soon)
- NodeGraph (Coming soon)
- NikNav ( NikNaks Navigation ) on ToDo
- Extended functions (Coming soon)