Documentation for ALPACA's Lua functions
-
void LoadScene(LuaScene scene) ¶
-
Loads a new scene.
This door example expects a Spine point object near the door:
-
GoToPoint("cockpit", function () LoadScene("cockpit") end)
-
void InterruptibleOff() ¶
-
Prevent the player from skipping an interaction or walking somewere else
-
void InterruptibleOn() ¶
-
Enable interruption again
-
void PlayAnimation(Number trackIndex, LuaSpineAnimation newAnimation, bool loop, std::optional<sol::function> callback) ¶
-
Play an animation on the calling Spine object
int trackIndex: Spine animation track.
string newAnimation: Name of the animation to play.
bool loop: Whether to loop the animation at the end.
function callback: Function to be called at the end of the animation, also for looped animations.
-
void AddAnimation(Number trackIndex, LuaSpineAnimation newAnimation, bool loop, Number delay, std::optional<sol::function> callback) ¶
-
Adds an animation to the calling Spine object that will be played after the current animation ends.
int trackIndex: Spine animation track.
string newAnimation: Name of the animation to play.
bool loop: Whether to loop the animation at the end.
function callback: Function to be called at the end of the animation, also for looped animations.
-
void PlayAnimationOn(LuaSpineObject object, Number trackIndex, LuaSpineAnimation newAnimation, bool loop, std::optional<sol::function> callback) ¶
-
See PlayAnimation
SpineObject object: ID of the object to affect
int trackIndex: Spine animation track.
string newAnimation: Name of the animation to play.
bool loop: Whether to loop the animation at the end.
function callback: Function to be called at the end of the animation, also for looped animations.
-
void AddAnimationOn(LuaSpineObject object, Number trackIndex, LuaSpineAnimation newAnimation, bool loop, Number delay, std::optional<sol::function> callback) ¶
-
See AddAnimation
SpineObject object: ID of the object to affect
int trackIndex: Spine animation track.
string newAnimation: Name of the animation to play.
bool loop: Whether to loop the animation at the end.
function callback: Function to be called at the end of the animation, also for looped animations.
-
void SetSkin(LuaSpineSkin skin) ¶
-
Set a skin on a Spine object
string skin: The name of the Spine skin
-
void SetSkinOn(LuaSpineObject object, LuaSpineSkin skin) ¶
-
See SetSkin
SpineObject object: ID of the object to affect
string skin: The name of the Spine skin
-
void SetSkins(std::vector<LuaSpineSkin> skins) ¶
-
Set a list of skins on a Spine object
table<string> skin: The name of the Spine skin
-
void SetSkinsOn(LuaSpineObject object, std::vector<LuaSpineSkin> skins) ¶
-
See SetSkins
SpineObject object: ID of the object to affect
table<string> skin: The name of the Spine skin
-
void PlayDialog(LuaDialog dialogName, std::optional<sol::function> callback) ¶
-
Play a dialog by name
string dialogName: The dialog to play.
-
void AddToInventory() ¶
-
Add the current item to the inventory.
Sets the skin of the item of the item to inventory_default_skin
Move the item from the scene to inventory_items.
-
void AddToInventoryWithSkin(LuaSpineSkin skin) ¶
-
See AddToInventory
string skin: The name of the Spine skin
-
void AddToInventoryOn(LuaSpineObject object) ¶
-
See AddToInventory
SpineObject object: ID of the object to affect
Note: The object must be in the scene, this function does not create new objects. The object can be placed outside the scene view.
-
void AddToInventoryWithSkinOn(LuaSpineObject object, LuaSpineSkin skin) ¶
-
See AddToInventory
SpineObject object: ID of the object to affect
string skin: The name of the Spine skin
Note: See the AddToInventoryOn note.
-
void RemoveFromInventory() ¶
-
DEPRECATED use SetDeleted
-
void RemoveFromInventoryOn(LuaSpineObject object) ¶
-
DEPRECATED use SetDeleted
-
void SetDeleted() ¶
-
Set deleted in the current object.
Objects are only deleted at the end of the frame.
-
void SetDeletedOn(LuaSpineObject object) ¶
-
See SetDeleted
SpineObject object: ID of the object to affect
Note: SetDeleted cannot be called on the last frame of an animation via a Spine event.
-
returns: a list of points GetPointNames() ¶
-
Get all Spine points from this Spine object
-
returns: a list of positions GetPointNamesOn(LuaSpineObject object) ¶
-
See GetPointNames
Lua Example:
SpineObject object: ID of the object to affect
-
local points = GetPointNamesOn("inventory_object") for i = 1, #points do print(i, points[i]) end
-
void GoToPoint(LuaSpinePoNumber point_name, std::optional<sol::function> callback) ¶
-
Send the player to the position of a point of this Spine object.
string point_name: Name of the Spine point the player should go to
function callback: Function to be called when the layer reaches the position
-
void GoToPointOn(LuaSpineObject object, LuaSpinePoNumber point_name, std::optional<sol::function> callback) ¶
-
See GoToPoint
SpineObject object: ID of the object to affect
string point_name: Name of the Spine point the player should go to
function callback: Function to be called when the layer reaches the position
-
void StopWalking() ¶
-
Stop the player at this position.
-
returns: Tupe(x, y) GetPointPosition(LuaSpinePoNumber point_name) ¶
-
Debug function to get the position of a Spine point.
string point_name: Name of the Spine point
-
void SetPositionToPoint(LuaSpinePoNumber point_name) ¶
-
Set the position of an object to a Spine point.
string point_name: Name of the Spine point
-
void SetPositionToPointOn(LuaSpineObject object, LuaSpinePoNumber point_name) ¶
-
See SetPositionToPoint
SpineObject object: ID of the object to affect
string point_name: Name of the Spine point
-
void SetOnToPointFrom(LuaSpineObject object, LuaSpineObject from, LuaSpinePoNumber point_name) ¶
-
SpineObject object: ID of the object to affect
string from: Objects ID that provides the point
string point_name: Name of the Spine point
-
void SetHidden() ¶
-
Hide a Spine object.
-
void SetHiddenOn(LuaSpineObject object) ¶
-
See SetHidden
SpineObject object: ID of the object to affect
-
void SetVisible() ¶
-
Make a Spine object visible.
-
void SetVisibleOn(LuaSpineObject object) ¶
-
See SetVisible
SpineObject object: ID of the object to affect
-
void SetLayer(Number layer) ¶
-
Set the render layer of an Object.
It's also possible to make objects non-interactive below a certain layer.
int layer: Number of the layer
-
void SetLayerOn(LuaSpineObject object, Number layer) ¶
-
See SetLayer
SpineObject object: ID of the object to affect
-
void SetInactivLayerBorder(Number layer) ¶
-
Make all objects with a layer below this value non-interactive. Useful for a menu, inventory or intro that plays over a scene.
int layer: The layer number [default: 0].
-
void AttachToPointer() ¶
-
Attachannel the Spine object to the mouse pointer.
-
void AttachToPointerOn(LuaSpineObject object) ¶
-
See AttachToPointer
SpineObject object: ID of the object to affect
-
void DeattachAllFromPointer() ¶
-
Deatatchannel all Spine object from the pointer
-
void DeattachFromPointer() ¶
-
Deatatchannel the Spine object from the pointer
-
void DeattachFromPointerOn(LuaSpineObject object) ¶
-
See DeattachFromPointer
SpineObject object: ID of the object to affect
-
returns: bool IsAttachedToPointer() ¶
-
Is the Spine object attached to the mouse pointer
-
returns: bool IsAttachedToPointerOn(LuaSpineObject object) ¶
-
See IsAttachedToPointer
SpineObject object: ID of the object to affect
-
returns: bool IsSomethingAttachedToPointer() ¶
-
Is something attached to the mouse pointer
-
void SetRotation(Number rotation) ¶
-
Rote a Spine object
float rotation: A number between 0.0 and 365.0
-
void SetRotationOn(LuaSpineObject object, Number rotation) ¶
-
See SetRotation
SpineObject object: ID of the object to affect
float rotation: A number between 0.0 and 365.0
-
void SetScale(Number scale) ¶
-
Scale a Spine object
float: The scale
-
void SetScaleOn(LuaSpineObject object, Number scale) ¶
-
See SetScale
SpineObject object: ID of the object to affect
float: The scale
-
returns: Number GetTime() ¶
-
Returns the time in seconds since the game started.
-
void SetPlayerMaxSpeed(Number max_speed) ¶
-
Set the maximum speed of the player.
Can be set to 0 if the player should not be able to walk.
float speed: value of the maximum speed
-
void CreateObject(std::string spine_file, std::string id, Number scale) ¶
-
Create a game object from a Spine file
string spine_file
string id
float scale
-
void PlayAudio(LuaAudio file, LuaAudioChannel channel) ¶
-
Playing an audio file.
It's muchannel better to use Spine events to trigger the sound to keep it in sync with the animation
string file: The audio file
string channel: music, voice or sounds
-
void LoopAudio(LuaAudio file, LuaAudioChannel channel) ¶
-
Loop an audio file.
string file: The audio file
string channel: music, voice or sounds
-
void StopAudio(LuaAudio file, LuaAudioChannel channel) ¶
-
Stop an audio file.
string file: The audio file
string channel: music, voice or sounds
-
returns:a bool indication if the audio is playing isAudioPlaying(LuaAudio file, std::string channel) ¶
-
Checks if an audio file is playing.
string file: The audio file
string channel: music, voice or sounds
-
void setSoundVolume(Number level, std::string channel) ¶
-
Set Sound Volume
float level: A value between 0.0 and 1.0
string channel: music, voice or sounds
-
returns: the sound volume setSoundVolume(std::string channel) ¶
-
Ger Sound Volume
string channel: music, voice or sounds
-
returns: the name as string GetID() ¶
-
Get the objects ID
-
void SetPlayerScaleX(Number scale) ¶
-
Set the player's x-scale
float: The scale
-
void SetLanguage(LuaLanguage language) ¶
-
Set the language
string: Example 'de' or 'en'
-
void Exit() ¶
-
Exit the game
Not supported on iOS
-
void SaveGame() ¶
-
Write a savegame
-
void LoadGame() ¶
-
Load the savegame
-
void DeleteSaveGame() ¶
-
Delete the savegame file
-
void SetzBufferMap(std::string file) ¶
-
Set the zBufferMap to a file
-
void RemovezBufferMap() ¶
-
Remove the zBufferMap