All Classes and Interfaces

AABB = Axis-Aligned Bounding Box
Stores the aliases.
Parses aliases.
Provides aliases on Bukkit/Spigot platform.
Name of an alias used by AliasesProvider.addAlias(AliasName, String, Map, Map) for registration.
Represents a variation of material.
Represents an argument of a command
Represents arithmetic for certain two types.
A simple iterator to iterate over an array.
Effects that extend this class are ran asynchronously.
Methods which operate with blocks but are not compatible across some Minecraft versions.
Blocks any messages from being logged.
Main usage is ExprInventoryInfo This class allows Skript to return a block while being able to recognize it as InventoryHolder, You may only use this class if a expression's return type is an InventoryHolder.
Manages setting blocks.
A block that gets all data from a BlockState, and either reflects changes on the BlockState or delays them to the real block by 1 tick depending on which constructor is used.
TODO !Update with every version [blocks] - also update aliases-*.sk
Contains all data block has that is needed for comparisions.
REM: Don't even think about supporting CraftBukkit's new logging library "log4j".
Contains helpers for Bukkit's not so safe stuff.
Converts Skript's chat components into Bungee's BaseComponents which Spigot supports, too.
Reads JSON produced by Burger and does some stuff with it.
A string which is compared ignoring it's case.
An interface to declare changeable values.
Chat codes; includes color codes (reference) and also, some formatting codes (mostly this)
Handles parsing chat messages.
A PatternElement that has multiple options, for example hello|world.
Tracks click events to remove extraneous events for one player click.
An interface for optionally cloning an object, should return the given object if no cloning is required.
Like Closeable, but not used for resources, thus it neither throws checked exceptions nor causes resource leak warnings.
Utils for collections and arrays.
An iterator that iterates over all elements of several iterables.
Utilizes CraftServer with reflection to re-send commands to clients.
copied from CraftBukkit (
Used to compare two objects of a different or the same type.
Holds information about a Comparator.
Comparators are used to provide Skript with specific instructions for comparing two objects.
A condition which must be fulfilled for the trigger to continue.
Represents a config file.
ConfigurationSerializer<T extends org.bukkit.configuration.serialization.ConfigurationSerializable>
Uses strings for serialisation because the whole ConfigurationSerializable interface is badly documented, and especially DelegateDeserialization doesn't work well with Yggdrasil.
An Iterator that also calls Consumer.accept(Object) on each object provided by the given Iterator.
Represents a class which is a container, i.e.
This class is intended for usage in places of Skript that require an Event.
Represents a expression converted to another type.
Used to convert an object to a different type.
holds information about a converter
Holds information about a Converter.
Converters are used to provide Skript with specific instructions for converting an object to a different type.
Counts logged messages of a certain type
Item that is in player's cursor.
A list with fixed size that overrides the oldest elements when new elements are added and no more space is available.
Represents an expression that can be used as the default value of a certain type and event.
A block that gets all data from the world, but either delays any changes by 1 tick of reflects them on a given BlockState depending on which constructor is used.
Provides a description for annotated element in documentation.
TODO list special expressions for events and event values TODO compare doc in code with changed one of the webserver and warn about differences?
Sets documentation id for the annotated element.
Represents an item of dropped item entity.
An effect which is unconditionally executed when reached, and execution will usually continue with the next item of the trigger after this effect is executed (the stop effect for example stops the trigger, i.e.
A Section that may also be used as an effect, meaning there may be no section to parse.
Maps enchantments to their keys.
EntityData<E extends org.bukkit.entity.Entity>
Utility class for quick Entity methods
An EntryContainer is a data container for obtaining the values of the entries of a SectionNode.
EntryData is used for defining the different entries of for a SectionNode.
A validator for storing EntryData.
A utility builder for creating an entry validator that can be used to parse and validate a SectionNode.
EnumClassInfo<T extends Enum<T>>
This class can be used for an easier writing of ClassInfos that are enums, it registers a language node with usage, a serializer, default expression and a parser.
TODO this should actually only be an Iterator
EnumParser<E extends Enum<E>>
Mainly kept for backwards compatibility, but also serves as ClassResolver for enums.
EnumUtils<E extends Enum<E>>
Represents equipment slot of an entity.
Does nothing but print messages before the first error encountered and/or a message at the end if no error were encountered.
The quality of a parse error.
Provides a list of examples to be used in documentation for annotated element.
Represents an expression.
A type of KeyValueEntryData designed to parse its value as an Expression.
A list of expressions.
Used to define in which order to parse expressions.
Holds a field's name and value, and throws StreamCorruptedExceptions if primitives or objects are used incorrectly.
A variable storage that stores its content in a comma-separated value file (CSV file).
Functions can be called using arguments.
Reference to a Skript function.
Static methods to work with functions.
Used to get a specific value from instances of some type.
Uses Github API to check for updates.
Github API response for GSON deserialization.
A PatternElement that represents a group, for example (test).
Template engine, primarily used for generating Skript documentation pages by combining data from annotations and templates.
A line of a config that could not be parsed.
Represents a slot in some inventory.
This class is no longer exposed in newer versions.
Represents old ItemData (before aliases rework and MC 1.13).
Contains bit mask flags for some item properties.
Represents contents of an item frame.
Miscellaneous static utility methods related to items.
Handles common JRE-related incompatible field types.
An entry based on SimpleNodes containing a key and a value.
Provides a list of keywords that will allow for easier documentation searching.
A three-valued logic type (true, unknown, false), named after Stephen Cole Kleene.
Parse mode for links in chat messages.
A literal, e.g.
A specific KeyValueEntryData type designed to parse the entry's value as a supported literal type.
A list of literals.
A PatternElement that contains a literal string to be matched, for example hello world.
A class that contains methods based around making it easier to deal with UnparsedLiteral objects.
A log handler is used to handle Skripts logging.
Marks the annotated element as being subject to removal in the future.
How well two items match each other.
A result from pattern matching.
This class is not to be used by addons.
Basic class to get text from the language file(s).
Component for chat messages.
Provides the name of annotated element to be used in documentation.
Contains a set of functions.
Key to a namespace.
Origin of functions in namespace.
1.13+ block compat.
Map for fast access of entry nodes and section nodes within section nodes.
Annotated element will not appear in documentation, nor will missing documentation about it cause warnings.
An update checker that never reports available updates.
A object that can both be opened and closed.
A PatternElement that contains an optional part, for example [hello world].
A parser used to parse data from a string or turn data into a string.
An abstract class for addons that want to add data bound to a ParserInstance.
A PatternElement that applies a parse mark when matched.
Allows binary-patching old versions of Skript from this jar.
The pattern structure is a linked list of PatternElements, where points to the next element to be matched, which can be on an outer level, and where PatternElement.originalNext points to the next element on the same level.
A helper class useful when a expression/condition/effect/etc.
Contains utility methods related to players
An ArgsMessage that pluralises words following numbers.
A class that acts as a "pseudo-enum", i.e.
Redirects the log to a CommandSender.
A PatternElement that contains a regex Pattern, for example <.+>.
Represents a relation between two objects.
Allows checking whether releases are in this channel or not.
Describes a Skript release.
Status of currently installed release.
Provides a list of plugins other than Skript that the annotated element requires to be used.
Scripts are the primary container of all code.
Per-script aliases provider and parser container.
This class is used for user-defined commands.
To be implemented on data objects for Script's Data API.
A ScriptEvent is used for listening to and performing actions for different Script events.
A ScriptEvent that is called when a Script is made active in a ParserInstance.
A ScriptEvent that is called when a Script is made inactive in a ParserInstance.
The main class for loading, unloading and reloading scripts.
A class for keeping track of the general content of a script: The amount of files The amount of structures
An enum containing Script warnings that can be suppressed.
A section that can decide what it does with its contents, as code isn't parsed by default.
A simple entry data class for handling SectionNodes.
To be used in sections that delay the execution of their code through a Trigger.
Regular Structure methods should be used.
An instance of a serialized variable, contains the variable name and the serialized value.
A serialized value of a variable.
Represents all server platforms that Skript runs on.
Function signature: name, parameter types and a return type.
A very basic SkriptEvent which returns true for all events (i.e.
An implementation of the Expression interface.
A JavaFunction which doesn't make use of the FunctionEvent instance and that cannot accept empty / null parameters.
Represents a literal, i.e.
Provides the version of plugin when was the annotated element added.
Skript - A Bukkit plugin to modify how Minecraft behaves without having to write a single line of code (You'll likely be writing some code though if you're reading this =P)
Utility class for Skript addons.
This exception is thrown if the API is used incorrectly.
Chat codes that come with Skript by default.
Important: don't save values from the config, a '/skript reload config/configs/all' won't work correctly otherwise!
A SkriptEvent is like a condition.
An event listener for one priority.
Used for parsing my custom patterns.

Note: All parse methods print one error at most xor any amount of warnings and lower level log messages.
Static utils for Skript timings.
Skript's update checker.
Slot stuff got its own package.
Represents a container for a single item.
Represents a slot which has index.
TODO create a metadata table to store some properties (e.g.
Supertype of conditions and effects
Structures are the root elements in every script.
Priorities are used to determine the order in which Structures should be loaded.
Special SyntaxElementInfo for Structures that may contain information such as the EntryValidator.
Represents a general part of the syntax.
Represents the displayed item of a throwable projectile.
A log handler that records the time since its creation.
An entry data class designed to take a SectionNode and parse it into a Trigger.
Represents a trigger item, i.e.
Represents a section of a trigger, e.g.
This is used to manage local variable type hints.
A PatternElement that contains a type to be matched with an expressions, for example %number%.
A literal which has yet to be parsed.
Checks for updates
Returned by an update checker when an update is available.
Extensible updater system.
State of updater.
Utility class.
Handles all things related to variables.
A variable storage is holds the means and methods of storing variables.
Represents a string that may contain expressions, and is thus "variable".
A type of KeyValueEntryData designed to parse its value as a VariableString.
An empty line or a comment.
Utility class for Bukkit worlds
Yggdrasil is a simple data format to store object graphs.
Thrown if the object(s) that should be saved/loaded with Yggdrasil do not comply with its requirements, or if Yggdrasil is used incorrectly.
Can be used to set a class's or field's id used by Yggdrasil.
Marks a class as serialisable by Yggdrasil.
A class that has transient fields or more generally wants to exactly define which fields to write to/read from stream should implement this interface.
Provides a method to resolve missing enum constants.
A class that has had fields added, changed, or removed from it should implement this interface to handle the now invalid/missing fields that may still be read from stream.
Serializer that allows Yggdrasil to automatically serialize classes that extend YggdrasilSerializable.
Utility to be able to save and load classes with Yggdrasil that the user has no control of, e.g.
XML has so many quirks that storing arbitrary data cannot be guaranteed.
XML has so many quirks that storing arbitrary data cannot be guaranteed.