-
Notifications
You must be signed in to change notification settings - Fork 8
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)