All Classes and Interfaces
Class
Description
AABB = Axis-Aligned Bounding Box
A module is a component of a
SkriptAddon
used for registering syntax and other Skript
components.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.
A provider for anything with a (number) amount/size.
A provider for anything that contains other things.
A special kind of
ClassInfo
for dealing with 'any'-accepting types.A provider for anything with a (text) name.
'AnyProvider' types are holders for common properties (e.g.
Represents an argument of a command
A simple iterator to iterate over an array.
Effects that extend this class are ran asynchronously.
Deprecated, for removal: This API element is subject to removal in a future version.
Deprecated, for removal: This API element is subject to removal in a future version.
Use
BiMap
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.
An interface providing common methods to be implemented for any builder.
Represents an object that can be converted back into a builder.
REM: Don't even think about supporting CraftBukkit's new logging library "log4j".
A class containing
SyntaxRegistry
keys for Bukkit-specific syntax elements.An implementation for Bukkit based platforms.
A class containing the interfaces representing Bukkit-specific SyntaxInfo implementations.
A syntax info to be used for
SkriptEvent
s.An Event-specific builder is used for constructing a new Event syntax info.
A set of tags provided by Bukkit.
Contains helpers for Bukkit's not so safe stuff.
Utility class with methods pertaining to Bukkit API
Converts Skript's chat components into Bungee's BaseComponents which Spigot
supports, too.
Reads JSON produced by Burger
and does some stuff with it.
Deprecated, for removal: This API element is subject to removal in a future version.
use
Function
Deprecated, for removal: This API element is subject to removal in a future version.
An interface to declare changeable values.
Handles parsing chat messages.
Deprecated, for removal: This API element is subject to removal in a future version.
use
Predicate
A
PatternElement
that has multiple options, for example hello|world
.A ClassInfoReference represents a specific reference to a classinfo including any derivable context
A utility class for loading classes contained in specific packages.
A builder for constructing a
ClassLoader
.Utilities for interacting with classes.
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.
Deprecated, for removal: This API element is subject to removal in a future version.
use
Closeable
Utils for collections and arrays.
Deprecated.
use
Iterators.concat(Iterator[])
Utilizes CraftServer with reflection to re-send commands to clients.
copied from CraftBukkit (org.bukkit.craftbukkit.help.CommandAliasHelpTopic)
Holds info about the usage of a command.
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.
An object which can evaluate to `true`, `false`, or `unknown`.
Represents a boolean logic operator.
Represents a config file.
Uses strings for serialisation because the whole ConfigurationSerializable interface is badly documented, and especially DelegateDeserialization doesn't work well with
Yggdrasil.
Represents a class which is a container, i.e.
This class is intended for usage in places of Skript that require an Event.
The 'contract' of a function or another callable.
Represents a expression converted to another type.
Used to convert an object to a different type.
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 represents a player's inventory cursor.
A custom source of tags that stores its own tags.
This is for a special type of numerical value that is compared in a cyclical (rather than a linear) way.
Deprecated, for removal: This API element is subject to removal in a future version.
unused
Represents an element that can print details involving an event.
Represents an expression that can be used as the default value of a certain type or event.
This class is not safe to be directly referenced.
A syntax info to be used for
Expression
s.An Expression-specific builder is used for constructing a new Expression syntax info.
A syntax info to be used for
Structure
s.A Structure-specific builder is used for constructing a new Structure syntax info.
Represents type of
Node
s that can represent a Structure.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.
Rotates
Display
s around the X, Y, and Z axes, as well as any arbitrary axis.Builds a Disjunctive Normal Form
CompoundConditional
, meaning it is solely composed of groups of ANDs all ORed together,
ex.TODO list special expressions for events and event values
TODO compare doc in code with changed one of the webserver and warn about differences?
Represents a class which generates a documentation format (like HTML or JSON)
Sets documentation id for the annotated element.
Represents an item of dropped item entity.
A partial reference to a Skript function.
An index-linking key for a particular set of input expressions.
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.Represents the Effect aspect of an EffectSection.
Utility class for quick
Entity
methodsAn 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
.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.
Deprecated, for removal: This API element is subject to removal in a future version.
TODO this should actually only be an Iterator
Mainly kept for backwards compatibility, but also serves as
ClassResolver
for enums.A language utility class to be used for easily handling language values representing an Enum.
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.
A more versatile set of information about the source of an error.
A code location (line number and script name).
An event is something that happens.
An EventRegistry is a generic container for events.
A syntax element that restricts the events it can be used in.
Provides a list of examples to be used in documentation for annotated
element.
A process that can be executed, which may return its result.
Used to describe the intention of a
TriggerItem
.Represents a stop sections intent.
Represents a stop trigger intent.
An optional, potentially-experimental feature enabled per-script with the
using X
syntax.Something that can have experimental features enabled for.
A manager for registering (and identifying) experimental feature flags.
A container for storing and testing experiments.
Represents an expression.
A type of
KeyValueEntryData
designed to parse its value as an Expression
.Represents an expression's information, for use when creating new instances of expressions.
A list of expressions.
A dummy trigger item representing the 'section' aspect of a
SectionExpression
.Used to define in which order to parse expressions.
Experimental feature toggles as provided by Skript itself.
Holds a field's name and value, and throws
StreamCorruptedException
s
if primitives or objects are used incorrectly.A variable storage that stores its content in a
comma-separated value file (CSV file).
Stores the accumulated runtime errors over a span of time, then prints them.
Store limits for the number of issues a frame can print per frame.
Stores outputs of a frame.
Functions can be called using arguments.
Reference to a Skript function.
Static methods to work with functions.
Deprecated, for removal: This API element is subject to removal in a future version.
use
Converter
insteadUses 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.
Deprecated.
use
Iterator
Enum representing different movement input keys.
An InputSource represents a syntax that can provide a
value for
ExprInput
to use.A line of a config that could not be parsed.
Represents a slot in some inventory.
Utilities for inventories.
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.
Generates JSON docs
Represents an expression that is able to return a set of keys linked to its values.
Represents an expression that is able to accept a set of keys linked to values
during the
Changer.ChangeMode.SET
Changer
.An entry based on
SimpleNode
s 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.
The life cycle phase of an
Experiment
.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 Localizer is used for the localization of translatable strings.
A log handler is used to handle Skripts logging.
Represents a loop section.
The event used in the
ExprSecCreateLootContext
section.Wrapper for a LootContext.Builder to allow easier creation of LootContexts.
Utility class for loot tables.
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.
Something that contains or references nodes and can be navigated.
Annotated element will not appear in documentation, nor will missing
documentation about it cause warnings.
Rotates
Quaternionf
s around the X, Y, and Z axes, as well as any arbitrary axis.Rotates
Vector
s around the X, Y, and Z axes, as well as any arbitrary axis.Deprecated.
Use a use-case specific record.
An update checker that never reports available updates.
A object that can both be opened and closed.
Represents a pure binary operation
that takes two operands of types
L
and R
, performs a calculation,
and returns a result of type T
.A
PatternElement
that contains an optional part, for example [hello world]
.Deprecated.
Use a use-case specific record.
A set of tags provided by Paper.
Used to provide context as to where an element is being parsed from.
A parser used to parse data from a string or turn data into a string.
A Backup represents a ParserInstance at a certain point in time.
An abstract class for addons that want to add data bound to a ParserInstance.
Called when a
Script
is made active or inactive in 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
PatternElement
s,
where PatternElement.next
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 an expression/condition/effect/etc.
Contains utility methods related to players
An
ArgsMessage
that pluralises words following numbers.Deprecated, for removal: This API element is subject to removal in a future version.
use
Predicate
Priorities are used for things like ordering syntax and loading structures in a specific order.
A class that acts as a "pseudo-enum", i.e.
Rotates
Quaternionf
s around the X, Y, and Z axes, as well as any arbitrary axis.Redirects the log to one or more
CommandSender
s.A registry maintains a collection of elements.
This class can be used for easily creating ClassInfos for
Registry
s.A parser based on a
Registry
used to parse data from a string or turn data into a string.Serializer for
RegistryClassInfo
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.
Deprecated.
unused
Deprecated, for removal: This API element is subject to removal in a future version.
unused
A functional interface to support uniform rotation semantics between various types.
Represents an axis around which to rotate.
Represents a single instance of a runtime error.
Consumes runtime errors.
Handles passing runtime errors between producers and consumers via a frame collection system.
A RuntimeErrorProducer can throw runtime errors in a standardized and controlled manner.
Scripts are the primary container of all code.
Used for listening to events involving a Script.
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.The main class for loading, unloading and reloading scripts.
Used for listening to events involving a ScriptLoader.
A class for keeping track of the general content of a script:
The amount of files
The amount of structures
Called when a
Script
is created and preloaded in the ScriptLoader
.Called when a
Script
is loaded in the ScriptLoader
.Called when a
Script
is unloaded in the ScriptLoader
.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
SectionNode
s.A
Section
implementing this interface can execute a task when
it is exited by an 'exit'
or
'return'
effect.To be used in sections that delay the execution of their code through a
Trigger
.Deprecated.
Regular
Structure
methods should be used.Deprecated, for removal: This API element is subject to removal in a future version.
use
Predicate
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.
Deprecated, for removal: This API element is subject to removal in a future version.
use
Consumer
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)
The main class for everything related to Skript.
Utility class for Skript addons.
A Skript addon is an extension to Skript that expands its features.
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!
Used for listening to events involving Skript's configuration.
Called when Skript's configuration is successfully reloaded.
A SkriptEvent is like a condition.
The listening behavior of a Skript event.
An event listener for one priority.
Internal wrapper class for providing compatibility with the new Registration API.
helper class to handle bstats metrics
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.
Note: All parse methods print one error at most xor any amount of warnings and lower level log messages.
A queue of elements.
Represents a custom tag created by the Skript user.
A utility enum for accessing Paper's teleport flags (1.19.4+)
Static utils for Skript timings.
Skript's update checker.
Represents a container for a single item.
Represents a slot which has index.
Adapter pattern to unify
World
and Player
playSound methods.Utility class for working with sounds.
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.
Represents a general part of the syntax.
A syntax info contains the details of a syntax, including its origin and patterns.
A builder is used for constructing a new syntax info.
The origin of a syntax, currently only used for documentation purposes.
A basic origin describing the addon a syntax has originated from.
A syntax registry manages all
SyntaxRegister
s for syntax registration.Like a
SyntaxRegistry.Key
, but it has a parent which causes elements to be registered to itself and its parent.Represents a syntax element type.
A runtime error producer intended for use with
SyntaxElement
s.Utility class to build syntax strings, primarily intended for use
in
Debuggable.toString(Event, boolean)
implementations.The origin of a tag, eg.
A class in charge of storing and handling all the tags Skript can access.
A source for
Tag
s, be it Bukkit's tag registries, Paper's handmade tags, or
custom tags made by the user.The type of a tag.
Represents the displayed item of a throwable projectile.
Represents a duration of time, such as 2 days, similar to
Duration
.Represents the unit used for the current
Timespan
.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.
Deprecated, for removal: This API element is subject to removal in a future version.
Something that can become invalid due to external conditions, such as:
A newer copy of the same thing becomes available.
It is a finalised view that no longer reflects the real thing.
Some backing object has been deleted or irreparably modified.
Once this has been
Once this has been
Validated.invalidate()
d, its Validated.valid()
method should
return false
.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
.Deprecated, for removal: This API element is subject to removal in a future version.
Rotates
Vector
s around the X, Y, and Z axes, as well as any arbitrary axis.This interface provides methods for
Condition
s to provide expected and received values for EffAssert
or others to use to in debugging or testing scenarios.For objects that can provide an unmodifiable view of themselves.
An empty line or a comment.
A dummy/placeholder class to ensure working operation on MC versions that do not have `Wolf.Variant`
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 serializable 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.
BiMap