Introduction

After being annoyed with constantly having to create functions like recursive filters, proper assertions, and pretty much anything useful with tables, the VevoxelAPI for ROBLOX was born.

Usage

In it's simplest form:

api = require(255043196)

But, if you want to require from multiple locations and not have to type the asset ID each time, create a ModuleScript in ServerScriptService with the following:

if script.Parent == game.ServerScriptService then script:Clone().Parent = game.ReplicatedStorage end
return require(255043196)

Requiring this module from either ServerScriptService or ReplicatedStorage will also now yield the API. If you do not need to use the API in any LocalScripts, you can simply comment or remove the first line.

If you want a copy for yourself, you can simply take it for free from the ROBLOX website.

License

The VevoxelAPI for ROBLOX, like other APIs by Vevox, is available under the MIT License.

Documentation

Assertions (assert)

Performs assertions on various input, throwing an error if assertions fail. Serves as a more advanced form of Lua's assert function.

All functions accept a number as their final argument. This is optional, and may be used to specify the argument number that failed the assertion.

ok(*, [number])

Asserts that the statement is "truthy" (i.e. not not a == true).

notOk(*, [number])

Asserts that the statement is "falsey" (i.e. not a == true).

equal(*, *, [number])

Asserts that the first argument equals the second argument.

notEqual(*, *, [number])

Asserts that the first argument is not equal to the second argument.

is(*, string, [number])

Asserts that the first argument is of the type given in the second argument.

isA(Instance, string, [number])

Asserts that the first argument IsA class of the second argument.

Async (async)

A few functions involving co-routines and delays.

run(function, [number])

Runs the given function asynchronously after the given time in seconds or immediately. Legacy wrapper for delay.

Class (class)

Object-oriented-style class creation function using Lua metatables. This module does not have children and instead is just a function that is called directly.

@(function|table, [function])

If the first argument is a table, a new class will be created extending the class of the first argument, using the second argument as a constructor. If the first argument is a function, a new class will be created using that function as a constructor.

Constants (const)

Vevoxel API Constants

hello_world

The string value Hello world!.

version

The current version of the API, in semver format.

default_filter

The default filter function for filter calls. Currently a function that always returns true.

noop

A void-returning function that instantly exits

gravity

The default gravity for ROBLOX, at 196.2 studs/s^2.

Events (events)

TODO

Event Functions (event)

Helper functions for handing events.

debounced(RBXScriptSignal, function, [number])

De-bounces an event, using the given function as a callback. Optionally uses a specified number of seconds to wait between each "bounce".

Instance Functions (instance)

TODO

Interface Functions (interface)

TODO

Math (math)

TODO

TODO

String Functions (string)

TODO

Table Functions (table)

TODO