init commit, 2!

This commit is contained in:
Jill 2022-09-19 17:42:52 +03:00
parent 62d2b1085d
commit 85927223d4
48 changed files with 10787 additions and 0 deletions

2201
.typings/Actor.lua Normal file

File diff suppressed because it is too large Load Diff

207
.typings/ActorFrame.lua Normal file
View File

@ -0,0 +1,207 @@
-- Note for future me: You can't simply just type `ActorFrame` into a Lua console to get info about methods in
-- `ActorFrame` - instead, you can do something like `SCREENMAN("Footer").__index`
--- @class ActorFrame: Actor
--- @field public __index table Gives you the ``ActorFrame`` table again
local ActorFrame = {}
--- Set the ActorFrame's field-of-view (used when rendering children)
---
--- |since_itg|
---
--- @param fov float The new field-of-view to use, in degrees
---
--- @return void
function ActorFrame:fov(fov) end
--- Set the ActorFrame's field-of-view (used when rendering children)
---
--- This is just an alias for :lua:meth:`ActorFrame.fov`
---
--- |since_itg|
---
--- @param fov float The new field-of-view to use, in degrees
---
--- @return void
function ActorFrame:SetFOV() end
--- Sets the ActorFrame's update command
---
--- |since_itg|
---
--- @param name string The command name to call on updates
---
--- @return void
function ActorFrame:SetUpdateCommand(name) end
--- Sets the ActorFrame's update function
---
--- Since |notitg_v4_2_0|, on error, a dialog is shown and the update function is unset.
---
--- |since_itg|
---
--- @param updateFunc function The function to call on updates
---
--- @return void
function ActorFrame:SetUpdateFunction(updateFunc) end
--- Sets how frequently the ActorFrame should fire it's update command/function
---
--- |since_itg|
---
--- @param rate float The new update rate to use
---
--- @return void
function ActorFrame:SetUpdateRate(rate) end
--- Returns the number of children the ActorFrame has
---
--- |since_itg|
---
--- @return int
function ActorFrame:GetNumChildren() end
--- Returns all children of the ActorFrame in a table
---
--- |since_notitg_v4|
---
--- @return Actor[]
function ActorFrame:GetChildren() end
--- Returns a child with a given name
---
--- Will return ``nil`` if no child exists at with the specified name
---
--- |since_itg|
---
--- @param name string The name of the child to get
---
--- @return Actor|nil
function ActorFrame:GetChild(name) end
--- Returns a child at an index
---
--- Will return ``nil`` if no child exists at the given index
---
--- |since_notitg_v1|
---
--- @param index int The index of the child to get
---
--- @return Actor|nil
function ActorFrame:GetChildAt(index) end
--- Sets the ActorFrame's draw distance
---
--- The default is ``1000``
---
--- |since_notitg_v3|
---
--- @param farDist float The new draw distance t oset
---
--- @return void
function ActorFrame:SetFarDist(farDist) end
-- TODO: Link screen center consts
--- Sets the X coordinate for the ActorFrame's vanishing point
---
--- The default is ``SCREEN_CENTER_X``
---
--- |since_notitg_v1|
---
--- @param x float The X coordinate to set
---
--- @return void
function ActorFrame:SetVanishX(x) end
--- Sets the Y coordinate for the ActorFrame's vanishing point
---
--- The default is ``SCREEN_CENTER_Y``
---
--- |since_notitg_v1|
---
--- @param y float The Y coordinate to set
---
--- @return void
function ActorFrame:SetVanishY(y) end
--- Sets the vanishing point for the ActorFrame
---
--- The default is ``SCREEN_CENTER_X, SCREEN_CENTER_Y``
---
--- |since_notitg_v1|
---
--- @param x float The X coordinate to set
--- @param y float The Y coordinate to set
---
--- @return void
function ActorFrame:SetVanishPoint(x, y) end
--- Set whether commands should be propagated to children
---
--- This is disabled by default
---
--- |since_itg|
---
--- @param enable int ``1`` to enable, ``0`` to disable
---
--- @return void
function ActorFrame:propagate(enable) end
--- Set whether shaders should be propagated to children
---
--- This is disabled by default
---
--- |since_notitg_v3|
---
--- @param enable int ``1`` to enable, ``0`` to disable
---
--- @return void
function ActorFrame:propagateshaders(enable) end
--- Sets the ActorFrame's draw function
---
--- |since_notitg_v1|
---
--- @param drawFunc function The function to call at every draw attempt
---
--- @return void
function ActorFrame:SetDrawFunction(drawFunc) end
--- Sets whether the "draw by Z positon" behaviour should be enabled
---
--- This is disabled by default
---
--- |since_itg|
---
--- @param enable boolean Whether the "draw by Z positon" behavious should be enabled
---
--- @return void
function ActorFrame:SetDrawByZPosition(enable) end
--- Returns a child of the actor frame
---
--- Will return ``nil`` if the child doesn't exist
---
--- |since_notitg_v4|
---
--- @param child string|int The name or index of the child to get
---
--- @return Actor|nil
function ActorFrame:__call(child) end
--- Return the number of children the ActorFrame has
---
--- |since_notitg_v4|
---
--- @return int
function ActorFrame:__len() end
--- Retruns an ``ActorFrame (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ActorFrame:__tostring() end
return ActorFrame

View File

@ -0,0 +1,110 @@
--- @class ActorFrameTexture: ActorFrame
--- @field public __index table Gives you the ``ActorFrameTexture`` table again
local ActorFrameTexture = {}
--- Creates the render target - you must call this before using an ActorFrameTexture
---
--- This should be called after configuring the ActorFrameTexture (using methods such as :lua:meth:`EnableDepthBuffer` and what not)
---
--- |since_notitg_v1|
---
--- @return void
function ActorFrameTexture:Create() end
--- Recreates the render target
---
--- |since_notitg_unk| (|notitg_v4| or earlier?)
---
--- @return void
function ActorFrameTexture:Recreate() end
--- Sets whether the render target should have an alpha buffer
---
--- This is disabled by default
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether an alpha buffer should be created
---
--- @return void
function ActorFrameTexture:EnableAlphaBuffer(enable) end
--- Sets whether the render target should have a depth buffer/Z buffer
---
--- This is disabled by default
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether a depth buffer should be created
---
--- @return void
function ActorFrameTexture:EnableDepthBuffer(enable) end
--- Sets whether the render target should be grayscale
---
--- This is disabled by default
---
--- |since_notitg_v2|
---
--- @param enable boolean Whether the render target should be grayscale
---
--- @return void
function ActorFrameTexture:EnableGrayscale() end
--- Sets whether the render target should be cleared before drawing to it
---
--- If preserve texture is enabled, then the render target will not be cleared when rendering.
---
--- This is disabled by default (ie: it defaults to clearing the target before rendering)
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether preserve texture should be enabled or not
---
--- @return void
function ActorFrameTexture:EnablePreserveTexture(enable) end
--- Sets whether the ActorFrameTexture should use floating point buffers
---
--- This is disabled by default
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether floating point buffers should be used
---
--- @return void
function ActorFrameTexture:EnableFloat() end
--- Returns the texture/render target
---
--- |since_notitg_v1|
---
--- @return RageTextureRenderTarget
function ActorFrameTexture:GetTexture() end
--- Sets the name of the texture
---
--- This can be used to reference the ActorFrameTexture's texture/render target from another actor
---
--- |since_notitg_v1|
---
--- @param name string The new name for the texture
---
--- @return void
function ActorFrameTexture:SetTextureName(name) end
--- Returns the texture's name
---
--- |since_notitg_v1|
---
--- @return string
function ActorFrameTexture:GetTextureName() end
--- Returns an ``ActorFrameTexture (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ActorFrameTexture:__tostring() end
return ActorFrameTexture

32
.typings/ActorProxy.lua Normal file
View File

@ -0,0 +1,32 @@
-- NOTE
-- Proxied actors on ActorProxy can be disconnected
-- Just pass nothing to it, example: ``proxy:SetTarget()``
--- @class ActorProxy: Actor
--- @field public __index table Gives you the ``ActorProxy`` table again
local ActorProxy = {}
--- Sets or clears the target of the actor proxy
---
--- |since_notitg_v1|
---
--- @param actor Actor|nil The actor this proxy will re-draw, or nil to un-set the target (``nil`` is only accepted since |notitg_v4|)
---
--- @return void
function ActorProxy:SetTarget(actor) end
--- Returns the target of the actor proxy
---
--- |since_notitg_v1|
---
--- @return Actor|nil
function ActorProxy:GetTarget() end -- TODO: Check if this actually returns nil or crashes
--- Retruns an ``ActorProxy (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ActorProxy:__tostring() end
return ActorProxy

View File

@ -0,0 +1,21 @@
--- @class ActorScroller: ActorFrame
--- @field public __index table Gives you the ``ActorScroller`` table again
local ActorScroller = {}
--- Scrolls to the item at index ``index``, and makes it the currently selected item
---
--- |since_itg|
---
--- @param index float The index of the targetted item
---
--- @return void
function ActorScroller:SetCurrentAndDestinationItem(index) end
--- Returns an ``ActorScroller (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ActorScroller:__tostring() end
return ActorScroller

62
.typings/ActorSound.lua Normal file
View File

@ -0,0 +1,62 @@
--- @class ActorSound: Actor
--- @field public __index table Gives you the ``ActorSound`` table again
local ActorSound = {}
--- Plays the sound from the beginning
---
--- If you want to resume a paused sound, use :lua:meth:`ActorSound.pause`
---
--- |since_notitg_v1|
---
--- @return void
function ActorSound:start() end
--- (Doesn't work) Presumably, plays the sound from the beginning
---
--- Overridden from :lua:meth:`Actor.play`
---
--- |since_notitg_v1|
---
--- @return void
function ActorSound:play() end
--- Pauses/resumes sound playback
---
--- |since_notitg_v3|
---
--- @param enable boolean ``true`` to pause, ``false`` to unpause
---
--- @return void
function ActorSound:pause(enable) end
--- Stops the sound
---
--- |since_notitg_v1|
---
--- @return void
function ActorSound:stop() end
--- Loads a new sound
---
--- |since_notitg_v1|
---
--- @param path string The filepath of the sound to load
---
--- @return void
function ActorSound:load(path) end
--- Returns the loaded sound object
---
--- |since_notitg_v1|
---
--- @return RageSound
function ActorSound:get() end
--- Returns an ``ActorSound (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ActorSound:__tostring() end
return ActorSound

59
.typings/BitmapText.lua Normal file
View File

@ -0,0 +1,59 @@
--- @class BitmapText: Actor
--- @field public __index table Gives you the ``BitmapText`` table again
local BitmapText = {}
--- Sets the text to be displayed
---
--- |since_itg|
---
--- @param text string The new text to display
---
--- @return void
function BitmapText:settext(text) end
--- Returns the currently displayed text
---
--- |since_itg|
---
--- @return string
function BitmapText:GetText() end
--- Sets/clears the maximum width allowed for rendering text
---
--- This is independent of the actor's zoom
---
--- |since_itg|
---
--- @param width float The new maximum width to set, or 0 to disable the width limit
---
--- @return void
function BitmapText:maxwidth(width) end
--- Sets/clears the maximum height allowed for rendering text
---
--- This is independent of the actor's zoom
---
--- |since_itg|
---
--- @param height float The new maximum height to set, or 0 to disable the height limit
---
--- @return void
function BitmapText:maxheight(height) end
--- Sets the text wrapping point
---
--- |since_itg|
---
--- @param width int Where to start wrapping text (in pixels)
---
--- @return void
function BitmapText:wrapwidthpixels(width) end
--- Returns a ``BitmapText (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function BitmapText:__tostring() end
return BitmapText

51
.typings/Course.lua Normal file
View File

@ -0,0 +1,51 @@
--- @class Course
--- @field public __index table Gives you the ``Course`` table again
local Course = {}
--- Returns the full title of the course for display
---
--- |since_itg|
---
--- @return string
function Course:GetDisplayFullTitle() end
--- Returns the full transliterated title of the course
---
--- |since_itg|
---
--- @return string
function Course:GetTranslitFullTitle() end
--- Returns the directory of the course
---
--- |since_itg|
---
--- @return string
function Course:GetCourseDir() end
--- Returns the course play mode
---
--- ``1`` = Non stop, ``2`` = Oni, ``3`` = Endless
---
--- |since_itg|
---
--- @return int
function Course:GetPlayMode() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function Course:__eq(other) end
--- Retruns an ``Course (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Course:__tostring() end
return Course

View File

@ -0,0 +1,49 @@
--- @class DifficultyMeter: ActorFrame
--- @field public __index table Gives you the ``DifficultyMeter`` table again
local DifficultyMeter = {}
--- Sets the difficulty meter's data from steps
---
--- |since_itg|
---
--- @param steps Steps The steps to use
---
--- @return void
function DifficultyMeter:SetFromSteps(steps) end
--- Sets the difficulty meter's data from a trail
---
--- |since_itg|
---
--- @param trail Trail The trail to use
---
--- @return void
function DifficultyMeter:SetFromTrail(trail) end
--- Sets the difficulty meter's data from a meter and difficulty value
---
--- |since_itg|
---
--- @param meter int The rated numerical difficulty to use
--- @param difficulty int The difficulty to use - See :cpp:enum:`Difficulty`
---
--- @return void
function DifficultyMeter:SetFromMeterAndDifficulty(meter, difficulty) end
--- Loads specified graphics into the difficulty meter
---
--- |since_itg|
---
--- @param path string The path to load
---
--- @return void
function DifficultyMeter:Load(path) end
--- Returns a ``DifficultyMeter (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Actor:__tostring() end
return DifficultyMeter

33
.typings/FadingBanner.lua Normal file
View File

@ -0,0 +1,33 @@
--- @class FadingBanner: ActorFrame
--- @field public __index table Gives you the ``FadingBanner`` table again
local FadingBanner = {}
--- Loads the banner for a given song
---
--- |since_itg|
---
--- @param song Song The song to load the banner from
---
--- @return void
function FadingBanner:LoadFromSong(song) end
--- Scales the banner to the specified dimmensions
---
--- This is identical to :lua:meth:`Sprite.scaletoclipped`
---
--- |since_itg|
---
--- @param width float The desired width
--- @param height float The desired height
---
--- @return void
function FadingBanner:ScaleToClipped(width, height) end
--- Returns a ``FadingBanner (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function FadingBanner:__tostring() end
return FadingBanner

30
.typings/Game.lua Normal file
View File

@ -0,0 +1,30 @@
--- @class Game
--- @field public __index table Gives you the ``Game`` table again
local Game = {}
--- Returns the name of the game
---
--- Will be ``dance`` or ``lights``
---
--- |since_itg|
---
--- @return string
function Game.GetName() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function Game:__eq(other) end
--- Returns a ``Game (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Game:__tostring() end
return Game

View File

@ -0,0 +1,42 @@
--- @class GameSoundManager
--- @field public __index table Gives you the ``GameSoundManager`` table again
local GameSoundManager = {}
--- Plays a sound immediately
---
--- Note that if the ``MuteActions`` preference is enabled, the sound won't be played
---
--- |since_itg|
---
--- @param path string The path to the audio file to play
---
--- @return void
function GameSoundManager:PlayOnce(path) end
--- Sets the music volume for a specified duration
---
--- |since_itg|
---
--- @param volume float The target volume (between ``0`` and ``1``)
--- @param duration float How long to keep the music at the specified volume, in seconds
---
--- @return void
function GameSoundManager:DimMusic(volume, duration) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function GameSoundManager:__eq(other) end
--- Returns an ``GameSoundManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function GameSoundManager:__tostring() end
return GameSoundManager

832
.typings/GameState.lua Normal file
View File

@ -0,0 +1,832 @@
--- @class GameState
--- @field public __index table Gives you the ``GameState`` table again
local GameState = {}
--- Returns the playback speed of the music
---
--- |since_notitg_v2|
---
--- @return float
function GameState:GetMusicRate() end
--- Returns whether the user has edited the song/machine offset
---
--- |since_itg|
---
--- @return boolean
function GameState:IsSyncDataChanged() end
--- Returns the display name for the specified player
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return string
function GameState:GetPlayerDisplayName(playerNumber) end
--- Returns the current sort order used for the music wheel
---
--- See the :cpp:enum:`SortOrder` enum
---
--- |since_itg|
---
--- @return int
function GameState:GetSortOrder() end
--- ?
---
--- @param val boolean Unknown
---
--- |since_unk|
---
--- @return void
function GameState:HideStageText(val) end
--- Returns whether we're in edit mode
---
--- |since_notitg_v1|
---
--- @return boolean
function GameState:IsEditMode() end
--- Forcibly crash the game with a given message
---
--- |since_notitg_unk|
---
--- @param message string A message to show on the crash dialog
---
--- @return never
function GameState:Crash(message) end
--- Executes ``cmd`` for both players, at the next "update" of the game (basically the next frame)
---
--- |since_itg|
---
--- @param cmd string The command to execute
---
--- @return void
function GameState:DelayedGameCommand(cmd) end
--- Returns whether players can join the game
---
--- |since_itg|
---
--- @return boolean
function GameState:PlayersCanJoin() end
--- Returns the master player number
---
--- Used in double mode to determine if the user is controlling the game from the P1 or P2 side (0 = player 1, 1 = player 2).
---
--- |since_itg|
---
--- @return int
function GameState:GetMasterPlayerNumber() end
--- Returns a version date string (eg: ``20200126``)
---
--- |since_notitg_v1|
---
--- @return string
function GameState:GetVersionDate() end
--- Gets the source Steps for the editor, or nil if not in edit mode
---
--- |since_itg|
---
--- @return Steps|nil
function GameState:GetEditSourceSteps() end
--- Sets the preferred song to ``song``
---
--- |since_itg|
---
--- @param song Song The song to use
---
--- @return void
function GameState:SetPreferredSong(song) end
--- Returns the preferred song
---
--- |since_itg|
---
--- @return Song
function GameState:GetPreferredSong() end
--- Returns the "real" path for a given virtual path
---
--- It works pretty well with "AdditionalSongFolders"
---
--- Eg: ``GAMESTATE:GetRealPath(GAMESTATE:GetCurrentSong():GetSongDir() .. './fg/default.xml') -- Returns 'D:/AdditionalSongFolder/Group/Song/fg/default.xml'``
---
--- |since_notitg_v4|
---
--- @param path string The path to get the "real" equivalent for
---
--- @return void
function GameState:GetRealPath(path) end
--- Returns the difficulty rating of a current player's steps
---
--- See the :cpp:enum:`Difficulty` enum
---
--- |since_unk|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return int
function GameState:PlayerDifficulty(playerNumber) end
--- Returns the current play mode
---
--- Not entirely sure if the play mode enum has changed since ITG and SM5, but here's the SM5 docs for PlayMode: https://quietly-turning.github.io/Lua-For-SM5/LuaAPI#Enums-PlayMode
---
--- |since_itg|
---
--- @return int
function GameState:GetPlayMode() end
--- Returns whether a given player has joined the game
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function GameState:IsSideJoined(playerNumber) end
--- Executes cmd, for either a specific player or both players
---
--- |since_itg|
---
--- @param cmd string The command to execute
--- @param playerNumber int|nil The player number to apply the command to (1 indexed - nil to apply it to both players)
---
--- @return void
function GameState:ApplyGameCommand(cmd, playerNumber) end
--- ?
---
--- |since_notitg_unk|
---
--- @param num number Unknown
---
--- @return void
function GameState:SetSRT(num) end
--- Returns whether event mode is enabled
---
--- |since_itg|
---
--- @return boolean
function GameState:IsEventMode() end
--- Enable/disable the tempoary event mode
---
--- |since_itg|
---
--- @param enable boolean Whether tempoary event mode should be enabled or not
---
--- @return void
function GameState:SetTemporaryEventMode(enable) end
--- Returns the current premium mode
---
--- See the :cpp:enum:`Premium` enum
---
--- |since_itg|
---
--- @return int
function GameState:GetPremium() end
--- An optimized shortcut for ``GameState.ApplyGameCommand("mod,...")``
---
--- Since |notitg_v4_2_0|, this will throw a Lua error with an invalid ``playerNumber``
---
--- |since_notitg_v2|
---
--- @param mods string A mod string to apply
--- @param playerNumber int|nil An optional player number to apply mods to (1 indexed)
---
--- @return void
function GameState:ApplyModifiers(mods, playerNumber) end
--- Simulates a key press
---
--- |since_notitg_v1|
---
--- @param key int The key code
---
--- @return void
function GameState:KeyPress(key) end
--- Temporarily override a user's ``SmoothLines`` preference for one song
---
--- |since_notitg_v4|
---
--- @param enable int 0 to force disable, 1 to force enable, -1 to reset
---
--- @return void
function GameState:ForceSmoothLines(enable) end
--- ?
---
--- |since_notitg_unk|
---
--- @param enable boolean Whether shaders should be recompiled on window resize??
---
--- @return void
function GameState:RecompileShadersOnResize(enable) end
--- Gets the X position of a note located in the column ``column``
---
--- Used for calculating manually where a note should be based on which modifiers are active and its vertical position.
---
--- |since_notitg_v2|
---
--- @param playerNumber int Which playfield to use (0 indexed)
--- @param column int Which column to use (0 or greater)
--- @param yOffset float The vertical offset of the note compared to the receptors
---
--- @return float
function GameState:GetX(playerNumber, column, yOffset) end
--- Gets the Y position of a note located in the column ``column``
---
--- Used for calculating manually where a note should be based on which modifiers are active and its vertical position.
---
--- |since_notitg_v2|
---
--- @param playerNumber int Which playfield to use (0 indexed)
--- @param column int Which column to use (0 or greater)
--- @param yOffset float The vertical offset of the note compared to the receptors
---
--- @return float
function GameState:GetY(playerNumber, column, yOffset) end
--- Gets the Z position of a note located in the column ``column``
---
--- Used for calculating manually where a note should be based on which modifiers are active and its vertical position.
---
--- |since_notitg_v2|
---
--- @param playerNumber int Which playfield to use (0 indexed)
--- @param column int Which column to use (0 or greater)
--- @param yOffset float The vertical offset of the note compared to the receptors
---
--- @return float
function GameState:GetZ(playerNumber, column, yOffset) end
--- Returns whether the specified player is using the specified modifier
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
--- @param modifier string The modifier to check
---
--- @return boolean
function GameState:PlayerIsUsingModifier(playerNumber, modifier) end
--- Returns whether the specified player is disqualified
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function GameState:IsDisqualified(playerNumber) end
--- Changes the input mode
---
--- |since_notitg_v1|
---
--- See the :cpp:enum:`InputMode` enum
---
--- @param inputMode int The new input mode to set
---
--- @return void
function GameState:SetInputMode(inputMode) end
--- Returns the current input mode
---
--- |since_notitg_v1|
---
--- See the :cpp:enum:`InputMode` enum
---
--- @return int
function GameState:GetInputMode() end
--- Gets the short name for the player ``playerNumber``
---
--- |since_notitg_v1|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return string
function GameState:GetPlayerNameFromNameEntry(playerNumber) end
--- Returns whether the given player is human (as opposed to being AI controlled)
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function GameState:IsHumanPlayer(playerNumber) end
--- Returns whether the given player is enabled
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function GameState:IsPlayerEnabled(playerNumber) end
--- Joins the specified player, without deducting any coin
---
--- |since_notitg_v1|
---
--- @param playerNumber int The player number (0 indexed)
function GameState:JoinPlayer(playerNumber) end
--- Returns the current coin mode
---
--- See the :cpp:enum:`CoinMode` enum
---
--- |since_itg|
---
--- @return int
function GameState:GetCoinMode() end
--- Returns the number of remaining coins
---
--- |since_itg|
---
--- @return int
function GameState:GetCoins() end
--- Returns the easiest difficulty chosen by players
---
--- See the :cpp:enum:`Difficulty` enum
---
--- |since_itg|
---
--- @return int
function GameState:GetEasiestStepsDifficulty() end
--- Registers an attack (some mod activations) to be launched at a specific moment
---
--- This attack will disable any currently active Lua mods. It's recommended to call this method in an InitCommand, as this can generate some lag spikes.
---
--- |since_notitg_v2|
---
--- @param startTime float The time (in seconds) where the attack should start
--- @param length float The length of an attack in seconds (0 or greater)
--- @param mods string The mod string to apply
--- @param playerNumber int|nil The player to apply the mods for (1 indexed) - if nil, apply to both players
---
--- @return void
function GameState:LaunchAttack(startTime, length, mods, playerNumber) end
--- Sets a number on a static external memory address
---
--- This address is `0x008BE0F8` for |notitg_v3_1|
---
--- Since |notitg_v4_2_0|, the number of external slots has been increased from 64 to 256.
---
--- |since_notitg_v3|
---
--- @param index int Index of the external (0 - 255)
--- @param flag int Index of the external
---
--- @return void
function GameState:SetExternal(index, flag) end
--- Gets a number on a static external memory address
---
--- Since |notitg_v4_2_0|, the number of external slots has been increased from 64 to 256.
---
--- |since_notitg_v3|
---
--- @param index int Index of the external (0 - 255)
---
--- @return void
function GameState:GetExternal(index) end
--- Sets the current playback position of the song
---
--- You need to run :lua:meth:`GameState.ReloadSteps` after calling this if you want arrows to update properly.
---
--- |since_notitg_v1|
---
--- @param beat float The beat to teleport to
---
--- @see GameState#ReloadSteps
function GameState:SetSongBeat(beat) end
--- Gets the current playback position of the song, in beats
---
--- |since_itg|
---
--- @return float
function GameState:GetSongBeat() end
--- Gets the current playback position of the song, in beats, without offsets/visual delays
---
--- Interestingly, this seems to return the same value as :lua:meth:`GameState.GetSongBeat`, even if you have a global audio offset. You might have better luck with ``GAMESTATE:GetSongBeat() + (PREFSMAN:GetPreference('GlobalOffsetSeconds') * GAMESTATE:GetCurBPS())``.
---
--- |since_itg|
---
--- @return float
function GameState:GetSongBeatVisible() end
--- Sets the current playback position of the song
---
--- You need to run :lua:meth:`GameState.ReloadSteps` after calling this if you want arrows to update properly.
---
--- |since_notitg_v1|
---
--- @param position float The position to teleport to (in seconds)
---
--- @return void
---
--- @see GameState#ReloadSteps
function GameState:SetSongPosition(position) end
--- Returns the current playback position of the playing song in seconds
---
--- |since_notitg_v2|
---
--- @return float
function GameState:GetSongTime() end
--- Returns the current playback position of the playing song in seconds, without visual offsets/delays (supposedly)
---
--- Interestingly, this seems to return the same value as ``GAMESTATE:GetSongTime()``, even if you have a global audio offset. You might have better luck with ``GAMESTATE:GetSongTime() + PREFSMAN:GetPreference('GlobalOffsetSeconds')``.
---
--- |since_notitg_v2|
---
--- @return float
function GameState:GetSongTimeVisible() end
--- Returns the current number of beats per second (BPS)
---
--- Prefer ``GAMESTATE:GetCurBPM()`` over ``GAMESTATE:GetCurBPS() * 60`` to get a more accurate value for beats per minute.
---
--- |since_itg|
---
--- @return float
---
--- @see GameState#GetCurBPM
function GameState:GetCurBPS() end
--- Returns the current number of beats per minute (BPM)
---
--- |since_notitg_v4_0_1|
---
--- @return float
---
--- @see GameState#GetCurBPS
function GameState:GetCurBPM() end
--- Reloads the steps
---
--- This is required after changing the song position to update the arrows (Eg: with :lua:meth:`GameState.SetSongBeat`)
---
--- |since_notitg_v1|
---
--- @return void
---
--- @see GameState#SetSongBeat
--- @see GameState#SetSongPosition
function GameState:ReloadSteps() end
--- Unloads the steps for the specified player
---
--- |since_notitg_v2|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return void
function GameState:UnloadSteps(playerNumber) end
--- Finishes/ends a song
---
--- This is equivalent to the "Send Noted Ended" option in the debug (F3) menu.
---
--- |since_notitg_v1|
---
--- @return void
function GameState:FinishSong() end
--- Returns whether the specified player has completed their current goal
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function GameState:IsGoalComplete(playerNumber) end
--- Returns the current steps for the specified player
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return Steps
function GameState:GetCurrentSteps(playerNumber) end
--- Sets the current steps for the specified player
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
--- @param steps Steps The steps to use
---
--- @return void
function GameState:SetCurrentSteps(playerNumber, steps) end
--- Sets the current song to ``song``
---
--- |since_itg|
---
--- @param song Song The song to use
---
--- @return void
function GameState:SetCurrentSong(song) end
--- Returns the current song
---
--- |since_itg|
---
--- @return Song
function GameState:GetCurrentSong() end
--- Returns the current trail for the specified player
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return Trail|nil
function GameState:GetCurrentTrail(playerNumber) end
--- Sets the current course to ``course``
---
--- |since_itg|
---
--- @param course Course The course to use
---
--- @return void
function GameState:SetCurrentCourse(course) end
--- Returns the current course
---
--- |since_itg|
---
--- @return Course
function GameState:GetCurrentCourse() end
--- Get the number of sides (players) joined
---
--- |since_itg|
---
--- @return int
function GameState:GetNumSidesJoined() end
--- Returns names from files and directories that match path
---
--- This function returns a variable number of strings - you should probably wrap it up into a table.
---
--- **Example:**
---
--- ``local matches = { GAMESTATE:GetFileStructure('Co') }``
---
--- ``matches`` will contain ``{ "copyright.txt", "Courses" }``
---
--- |since_notitg_v1|
---
--- @param path string The path to match
---
--- @return multiple
function GameState:GetFileStructure(path) end
--- Returns whether the given player is the winner
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function GameState:IsWinner(playerNumber) end
--- ?
---
--- |since_notitg_v1|
---
--- @return boolean
function GameState:GetDerp() end
--- Returns the number of enabled players (1 indexed)
---
--- |since_itg|
---
--- @return int
function GameState:GetNumPlayersEnabled() end
--- Sets the screen's ID
---
--- |since_notitg_v1|
---
--- @param id int The new ID
---
--- @return void
function GameState:SetScreenID(id) end
--- Returns the current screen's ID
---
--- Will return 573555 if in ``ScreenGameplay`` or if playing in ``ScreenEdit``, 0 otherwise.
---
--- |since_notitg_v1|
---
--- @return int
function GameState:GetScreenID() end
--- Returns a table of note skin names currenty in use
---
--- Example output: ``{ "scalable", "cyber" }`` if player 1 is using the scalable note skin, and player 2 is using
--- cyber. This seems to be set to ``{ "default", "default" }`` often when opening mod files though, so not sure what's
--- up with that.
---
--- |since_notitg_v4|
---
--- @return table
function GameState:GetCurrentNoteSkins() end
--- Returns true if any player has performed a ranked game (= not disqualified from ranking).
---
--- |since_itg|
---
--- @return boolean
function GameState:AnyPlayerHasRankingFeats() end
--- Gets the preferred difficulty for specified player
---
--- See the :cpp:enum:`Difficulty` enum
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return int
function GameState:GetPreferredDifficulty(playerNumber) end
--- Gets the number of additional coins needed to join
---
--- Eg: If 3 coins are needed, and 1 is inserted, this function will return 2
---
--- |since_itg|
---
--- @return int
function GameState:GetCoinsNeededToJoin() end
--- Returns whether we're in double mode
---
--- |since_itg|
---
--- @return int
function GameState:PlayerUsingBothSides() end
--- Returns the current game
---
--- |since_itg|
---
--- @return Game
function GameState:GetCurrentGame() end
--- Are we in marathon mode?
---
--- |since_itg|
---
--- @return boolean
function GameState:IsCourseMode() end
--- Returns whether a demonstration is currently running
---
--- |since_itg|
---
--- @return boolean
function GameState:IsDemonstration() end
--- Returns the environment table of the game
---
--- |since_itg|
---
--- @return table
---
--- @see GameState#GetEnv
--- @see GameState#SetEnv
function GameState:Env() end
--- Gets a value stored in the game's environment table
---
--- Returns ``nil`` if the key doesn't exist
---
--- |since_itg|
---
--- @param key string The key to fetch a value for
---
--- @return string|nil
---
--- @see GameState#Env
--- @see GameState#SetEnv
function GameState:GetEnv(key) end
--- Stores a value in the game's environment table
---
--- |since_itg|
---
--- @param key string The key to store a value for
--- @param value string The value to store
---
--- @return void
---
--- @see GameState#Env
--- @see GameState#GetEnv
function GameState:SetEnv(key, value) end
--- Returns whether the current stage is the extra stage
---
--- This function is also accessible via the *global* function ``IsExtraStage()``
---
--- |since_itg|
---
--- @return boolean
function GameState:IsExtraStage() end
--- Returns whether the current stage is the second extra stage
---
--- This function is also accessible via the *global* function ``IsExtraStage2()``
---
--- |since_itg|
---
--- @return boolean
function GameState:IsExtraStage2() end
--- Returns the current song's index, starting at ``1``
---
--- |since_itg|
---
--- @return int
function GameState:StageIndex() end
--- Returns the index of the current song in the current course, starting at ``0``
---
--- |since_itg|
---
--- @return int
function GameState:GetCourseSongIndex() end
--- Sets when the song should end
---
--- |since_notitg_v4_2_0|
---
--- @param seconds float The time the song should end, in seconds
---
--- @return void
function GameState:SetSongEndTime(seconds) end
--- Set whether the mod selection should be limited to just the ones available in OpenITG
---
--- This will disqualify you
---
--- |since_notitg_v4_2_0|
---
--- @param enable bool Whether only OpenITG mods should be allowed or not
---
--- @return void
function GameState:OnlyOpenITGMods(enable) end
--- Check equality with another userdata object
---
--- Have you ever wanted to check whether the GameState object, of which there is only ever one, is equal to another GameState? No? Well it's your lucky day!
--- oh.. and this likes to crash if you don't give it a userdata object - want to check if a GameState is equal to 42? bam, access violation
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function GameState:__eq(other) end
--- Returns a ``GameState (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function GameState:__tostring() end
return GameState

29
.typings/HelpDisplay.lua Normal file
View File

@ -0,0 +1,29 @@
--- @class HelpDisplay: BitmapText
--- @field public __index table Gives you the ``HelpDisplay`` table again
local HelpDisplay = {}
--- Sets the tips and alternate tips
---
--- |since_itg|
---
--- @param tips table The new tips to set
--- @param altTips table|nil The new alternate tips to set
---
--- @return void
function HelpDisplay:settips(tips, altTips) end
--- Returns two tables containing tips and alternate tips
---
--- |since_itg|
---
--- @return table
function HelpDisplay:gettips() end
--- Returns a ``HelpDisplay (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function HelpDisplay:__tostring() end
return HelpDisplay

70
.typings/HighScore.lua Normal file
View File

@ -0,0 +1,70 @@
--- @class HighScore
--- @field public __index table Gives you the ``HighScore`` table again
local HighScore = {}
--- Returns a string of modifiers used in gameplay
---
--- |since_itg|
---
--- @return string
function HighScore:GetModifiers() end
--- Returns the dance points percentage score
---
--- |since_itg|
---
--- @return float
function HighScore:GetPercentDP() end
--- Returns the score
---
--- |since_itg|
---
--- @return int
function HighScore:GetScore() end
--- Returns the number of seconds the player survived for
---
--- |since_itg|
---
--- @return float
function HighScore:GetSurvivalSeconds() end
--- Returns the name associated with the score
---
--- |since_itg|
---
--- @return string
function HighScore:GetName() end
--- Returns the date and time the high score was achieved
---
--- |since_itg|
---
--- @return string
function HighScore:GetDate() end
--- Returns ``true`` if the score's name uses a fill-in marker
---
--- |since_itg|
---
--- @return boolean
function HighScore:IsFillInMarker() end
--- Check equality with another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function HighScore:__eq(other) end
--- Returns a ``HighScore (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function HighScore:__tostring() end
return HighScore

View File

@ -0,0 +1,28 @@
--- @class HighScoreList
--- @field public __index table Gives you the ``HighScoreList`` table again
local HighScoreList = {}
--- Returns the list of high scores
---
--- |since_itg|
---
--- @return HighScore[]
function HighScoreList:GetHighScores() end
--- Check equality with another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function HighScoreList:__eq(other) end
--- Returns a ``HighScoreList (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function HighScoreList:__tostring() end
return HighScoreList

View File

@ -0,0 +1,32 @@
--- @class MemoryCardManager
--- @field public __index table Gives you the ``MemoryCardManager`` table again
local MemoryCardManager = {}
--- Returns the state of the specified player's memory card
---
--- See :cpp:enum:`MemoryCardState`
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return int
function MemoryCardManager:GetCardState(playerNumber) end
--- Check equality with another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function MemoryCardManager:__eq(other) end
--- Returns a ``MemoryCardManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function MemoryCardManager:__tostring() end
return MemoryCardManager

View File

@ -0,0 +1,32 @@
--- @class MessageManager
--- @field public __index table Gives you the ``MessageManager`` table again
local MessageManager = {}
--- Broadcasts a message commannd
---
--- See :doc:`/message_commands`
---
--- |since_itg|
---
--- @param message string The message command to broadcast
---
--- @return int
function MessageManager:Broadcast(message) end
--- Check equality with another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function MessageManager:__eq(other) end
--- Returns a ``MessageManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function MessageManager:__tostring() end
return MessageManager

283
.typings/Model.lua Normal file
View File

@ -0,0 +1,283 @@
--- @class Model: Actor
--- @field public __index table Gives you the ``Model`` table again
local Model = {}
--- Plays a specified animation
---
--- |since_notitg_v2|
---
--- @param name string The animation name
--- @param rate float The playback speed
---
--- @return void
function Model:playanimation(name, rate) end
--- ?
---
--- |since_notitg_v2|
---
--- @param name string The animation name
--- @param rate float The playback speed
--- @param frame number Frame?
---
--- @return void
function Model:playanimationframe(name, rate, frame) end
--- Returns the number of animation frames the model has
---
--- |since_notitg_v2|
---
--- @return int
function Model:GetTotalFrames() end
--- Returns the current animation frame (as a floating point number)
---
--- |since_notitg_v2|
---
--- @return int
function Model:GetCurrentFrame() end
--- Returns the animation rate
---
--- |since_notitg_v2|
---
--- @param rate float The new rate to set
---
--- @return int
function Model:SetAnimationRate(rate) end
--- Sets the current frame for all animated textures
---
--- Overridden from :lua:meth:`Actor.setstate`
---
--- |since_itg|
---
--- @param state int The frame to show (0 indexed)
---
--- @return void
function Model:setstate(state) end
--- Sets the current frame for one animated texture
---
--- |since_notitg_v1|
---
--- @param state int The frame to show (0 indexed)
--- @param index int The texture index (0 indexed)
---
--- @return void
function Model:setstateone(state, index) end
--- Enables/disables animation for one animated texture
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether animation should be enabled
--- @param index int The texture index (0 indexed)
---
--- @return void
function Model:animateone() end
--- Sets whether the model should use the depth/Z buffer
---
--- This defaults to ``true`` in an ``FGCHANGES`` and ``BETTERBGCHANGES`` layer, and ``false`` in a ``BGCHANGES`` layer.
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether the depth buffer should be used
---
--- @return void
function Model:SetUseZBuffer(enable) end
--- Sets a texture on the model
---
--- |since_notitg_v1|
---
--- @param index int The texture slot index (0 indexed)
--- @param texture RageTexture The texture to set in the slot
---
--- @return void
function Model:SetTexture(index, texture) end
--- Removes a texture from the model
---
--- |since_notitg_v1|
---
--- @param index int The texture slot to clear (0 indexed)
---
--- @return void
function Model:ResetTexture(index) end
--- Sets an alpha texture on the model
---
--- |since_notitg_v1|
---
--- @param index int The texture slot index (0 indexed)
--- @param texture RageTexture The texture to set in the slot
---
--- @return void
function Model:SetAlphaTexture(index, texture) end
--- Removes an alpha texture from the model
---
--- |since_notitg_v1|
---
--- @param index int The texture slot to clear (0 indexed)
---
--- @return void
function Model:ResetAlphaTexture() end
--- Sets the X translation for a texture
---
--- |since_notitg_v1|
---
--- @param index int The texture slot (0 indexed)
--- @param x float The X translation to apply, in pixels
---
--- @return void
function Model:SetTextureTranslateX(index, x) end
--- Sets the Y translation for a texture
---
--- |since_notitg_v1|
---
--- @param index int The texture slot (0 indexed)
--- @param y float The Y translation to apply, in pixels
---
--- @return void
function Model:SetTextureTranslateY(index, y) end
--- Sets the rotation for a texture
---
--- |since_notitg_v1|
---
--- @param index int The texture slot (0 indexed)
--- @param rotation float The rotation to apply, in degrees
---
--- @return void
function Model:SetTextureRotate(index, rotation) end
--- Sets the X scale for a texture
---
--- |since_notitg_v1|
---
--- @param index int The texture slot (0 indexed)
--- @param x float The X scale to apply
---
--- @return void
function Model:SetTextureScaleX(index, x) end
--- Sets the Y scale for a texture
---
--- |since_notitg_v1|
---
--- @param index int The texture slot (0 indexed)
--- @param y float The Y scale to apply
---
--- @return void
function Model:SetTextureScaleY(index, y) end
--- Sets the X and Y scale for a texture
---
--- |since_notitg_v1|
---
--- @param index int The texture slot (0 indexed)
--- @param scale float The scale to apply
---
--- @return void
function Model:SetTextureScale(index, scale) end
--- Sets this model's mesh
---
--- Eg: ``world.earth:LoadMilkshapeAscii(GAMESTATE:GetCurrentSong():GetSongDir() .. 'fg/model/circle_outline.obj.txt')``
---
--- |since_notitg_v2|
---
--- @param path string The path to the model to load
---
--- @return void
function Model:LoadMilkshapeAscii(path) end
--- Load a skeleton for a 3D model
---
--- |since_notitg_v2|
---
--- @param aniName string The animation name
--- @param path string The path to the skeleton file to load
---
--- @return void
function Model:LoadMilkshapeAsciiBones(aniName, path) end
--- Load materials for a 3D model
---
--- |since_notitg_v2|
---
--- @param path string The path to the materials file to load
---
--- @return void
function Model:LoadMilkshapeAsciiMaterials(path) end
--- Sets the polygon drawing mode
---
--- |since_notitg_v1|
---
--- @param mode int The new mode to set - see :cpp:enum:`PolygonMode`
---
--- @return void
function Model:SetPolygonMode(mode) end
--- Sets the outline width
---
--- |since_notitg_v1|
---
--- @param width float The new width to set
---
--- @return void
function Model:SetLineWidth(width) end
--- Sets the outline color
---
--- |since_notitg_v1|
---
--- @param r float The red value (0 - 1)
--- @param g float The green value (0 - 1)
--- @param b float The blue value (0 - 1)
--- @param a float The alpha value (0 - 1)
---
--- @return void
function Model:SetLineColor(r, g, b, a) end
--- Sets whether outlines should be drawn on top
---
--- |since_notitg_v2|
---
--- @param enable boolean Whether outlines should be drawn on top
---
--- @return void
function Model:SetOutlinesOnTop(enable) end
--- Sets whether the model should use cel shading
---
--- |since_notitg_v1|
---
--- @param enable boolean Whether cel shading should be enabled
---
--- @return void
function Model:SetCelShaded(enable) end
--- Sets whether the cel shading should be inverted
---
--- |since_notitg_v2|
---
--- @param enable boolean Whether cel shading should be inverted
---
--- @return void
function Model:SetInvertCelPass() end
--- Returns an ``Model (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Model:__tostring() end
return Model

View File

@ -0,0 +1,41 @@
--- @class NoteSkinManager
--- @field public __index table Gives you the ``NoteSkinManager`` table again
local NoteSkinManager = {}
--- Return a table of available note skin names that are valid for the current game type
---
--- |since_itg|
---
--- @return string[]
function NoteSkinManager:GetNoteSkinNames() end
--- Returns the path for a specific button and element
---
--- Since |notitg_v4_2_0|, this returns the theme's missing graphic if a noteskin element can't be found (instead of
--- crashing).
---
--- |since_itg|
---
--- @param button string The button
--- @param element string The element
---
--- @return string
function NoteSkinManager:GetPath(button, element) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function NoteSkinManager:__eq(other) end
--- Returns a ``NoteSkinManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function NoteSkinManager:__tostring() end
return NoteSkinManager

778
.typings/Player.lua Normal file
View File

@ -0,0 +1,778 @@
--- @class Player: ActorFrame
--- @field public __index table Gives you the ``Player`` table again
local Player = {}
--- Activate/deactivate a playfield
---
--- Useful for activating players 3 through 8
---
--- Returns the same boolean that you passed to the function
---
--- |since_notitg_v3|
---
--- @param enable boolean Whether the playfield should be awkake or not
---
--- @return boolean
function Player:SetAwake(enable) end
--- Returns whether a playfield is active
---
--- |since_notitg_v3|
---
--- @return boolean
function Player:IsAwake() end
--- Returns whether the player is using CMod (constant scroll speed)
---
--- |since_notitg_v3|
---
--- @return boolean
function Player:IsUsingCMod() end
--- Returns the player's CMod speed
---
--- Will return a value even if the player isn't using CMod
---
--- |since_notitg_v3|
---
--- @return int
function Player:GetCMod() end
--- Returns the player's XMod speed
---
--- Will return a value even if the player isn't using XMod
---
--- |since_notitg_v3|
---
--- @return float
function Player:GetXMod() end
--- Returns the player's scroll speed
---
--- |since_notitg_v3|
---
--- @return float
function Player:GetSpeedMod() end
--- Sets the player's combo
---
--- |since_notitg_v3|
---
--- @param combo int The new combo to set
---
--- @return void
function Player:SetCombo(combo) end
--- Returns the player's combo
---
--- |since_notitg_v3|
---
--- @return int
function Player:GetCombo() end
--- Sets the player's miss combo
---
--- |since_notitg_v3|
---
--- @param combo int The new miss combo to set
---
--- @return void
function Player:SetMissCombo(combo) end
--- Returns the player's miss combo
---
--- |since_notitg_v3|
---
--- @return int
function Player:GetMissCombo() end
--- Replaces a player's steps
---
--- |since_notitg_v3|
---
--- @param chart int Chart index? (0 indexed)
---
--- @return void
function Player:SetNoteData() end
--- Replaces a player's steps
---
--- |since_notitg_v3|
---
--- @param noteData table[table] See :ref:`note_data_format`
---
--- @return void
function Player:SetNoteDataFromLua(noteData) end
--- Returns the chart's note data
---
--- See :ref:`note_data_format`
---
--- |since_notitg_v3_1|
---
--- @param startBeat float|nil The start beat number (can be ``nil`` if you want to fetch *all* note data)
--- @param endBeat float|nil The end beat number (can be ``nil`` if you want to fetch *all* note data)
---
--- @return table[]
function Player:GetNoteData(startBeat, endBeat) end
--- Takes note data and stores it in a global variable
---
--- Prefer :lua:meth:`Player.GetNoteData` over this
---
--- See :ref:`note_data_format`
---
--- |since_notitg_v3|
---
--- @param varName string The global variable to store note data in
--- @param startBeat float|nil The start beat number (can be ``nil`` if you want to fetch *all* note data)
--- @param endBeat float|nil The end beat number (can be ``nil`` if you want to fetch *all* note data)
---
--- @return void
function Player:PushNoteData(varName, startBeat, endBeat) end
--- Takes note data and stores it in a global variable
---
--- Like :lua:meth:`Player.PushNoteData`, but uses seconds instead of beats to measure time
---
--- |since_notitg_v3|
---
--- @param varName string The global variable to store note data in
--- @param startBeat float|nil The start beat number (can be ``nil`` if you want to fetch *all* note data)
--- @param endBeat float|nil The end beat number (can be ``nil`` if you want to fetch *all* note data)
---
--- @return void
function Player:PushNoteDataTime(unk) end
--- Like :lua:meth:`Player.GetNoteData`, but the note data uses seconds instead of beat numbers
---
--- |since_notitg_v3|
---
--- @return table[]
function Player:GetNoteDataTime() end
--- Sets an X position spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetXSpline(index, column, value, offset, activationSpeed) end
--- Reset all X position spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetXSplines(column) end
--- Sets a Y position spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetYSpline(index, column, value, offset, activationSpeed) end
--- Reset all Y position spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetYSplines(column) end
--- Sets a Z position spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetZSpline(index, column, value, offset, activationSpeed) end
--- Reset all Z position spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetZSplines(column) end
--- Sets an X rotation spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetRotXSpline(index, column, value, offset, activationSpeed) end
--- Reset all X rotation spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetRotXSplines(column) end
--- Sets a Y rotation spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetRotYSpline(index, column, value, offset, activationSpeed) end
--- Reset all Y rotation spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetRotYSplines(column) end
--- Sets a Z rotation spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetRotZSpline(index, column, value, offset, activationSpeed) end
--- Reset all Z rotation spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetRotZSplines(column) end
--- Sets a size spline
---
--- Size spline points work like the ``Mini`` modifier (A value of 100 makes the arrows half size, 200 makes then have zero size, negative values makes arrows bigger)
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetSizeSpline(index, column, value, offset, activationSpeed) end
--- Reset all size spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetSizeSplines(column) end
--- Sets a skew spline
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetSkewSpline(index, column, value, offset, activationSpeed) end
--- Reset all skew spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetSkewSplines(column) end
--- Sets a stealth spline
---
--- Size spline points work like the ``Stealth`` modifier
---
--- |since_notitg_v3|
---
--- @param index int The spline index (0 - 39)
--- @param column int Which column to apply the spline to (0 indexed, pass -1 to apply the spline to all columns)
--- @param value float What value the spline point should have
--- @param offset float How far away arrows will be when hitting the spline point (calculate a spline offset as ``beat_offset * 100 * xmod_speed``)
--- @param activationSpeed float How quickly spline changes should take effect (-1 for instant)
---
--- @return void
function Player:SetStealthSpline(index, column, value, offset, activationSpeed) end
--- Reset all stealth spline points for a column
---
--- |since_notitg_v4|
---
--- @param column int The column to reset (0 indexed)
---
--- @return void
function Player:ResetStealthSplines(column) end
--- Set whether the ``mod,clearall`` command should reset splines
---
--- |since_notitg_v3|
---
--- @param enable boolean ``true`` to prevent spline clearing when mods are cleared, ``false`` to let mod clearing also reset splines
---
--- @return void
function Player:NoClearSplines(enable) end
--- Sets a custom shader to use for drawing arrows
---
--- |since_notitg_v3|
---
--- @param shader RageShaderProgram The custom shader to set
---
--- @return void
function Player:SetArrowShader(shader) end
--- Returns the custom shader used for drawing arrows
---
--- Will return ``nil`` if no custom shader has been set
---
--- |since_notitg_v3|
---
--- @return RageShaderProgram|nil
function Player:GetArrowShader() end
--- Removes any custom shader for drawing arrows
---
--- |since_notitg_v3|
---
--- @return void
function Player:ClearArrowShader() end
--- Sets a custom shader to use for drawing holds
---
--- |since_notitg_v3|
---
--- @param shader RageShaderProgram The custom shader to set
---
--- @return void
function Player:SetHoldShader() end
--- Returns the custom shader used for drawing holds
---
--- Will return ``nil`` if no custom shader has been set
---
--- |since_notitg_v3|
---
--- @return RageShaderProgram|nil
function Player:GetHoldShader() end
--- Removes any custom shader for drawing holds
---
--- |since_notitg_v3|
---
--- @return void
function Player:ClearHoldShader() end
--- Sets a custom shader to use for drawing receptors
---
--- |since_notitg_v3|
---
--- @param shader RageShaderProgram The custom shader to set
---
--- @return void
function Player:SetReceptorShader() end
--- Returns the custom shader used for drawing receptors
---
--- Will return ``nil`` if no custom shader has been set
---
--- |since_notitg_v3|
---
--- @return RageShaderProgram|nil
function Player:GetReceptorShader() end
--- Removes any custom shader for drawing receptors
---
--- |since_notitg_v3|
---
--- @return void
function Player:ClearReceptorShader() end
--- Sets a custom shader to use for drawing arrow paths
---
--- |since_notitg_v3|
---
--- @param shader RageShaderProgram The custom shader to set
---
--- @return void
function Player:SetArrowPathShader(shader) end
--- Returns the custom shader used for drawing arrow paths
---
--- Will return ``nil`` if no custom shader has been set
---
--- |since_notitg_v3|
---
--- @return RageShaderProgram|nil
function Player:GetArrowPathShader() end
--- Removes any custom shader for drawing arrow paths
---
--- |since_notitg_v3|
---
--- @return void
function Player:ClearArrowPathShader() end
--- Sets the number of points the arrow gradient will have
---
--- |since_notitg_v3|
---
--- @param column int The column to apply it to (0 indexed)
--- @param amount int The number of points
---
--- @return void
function Player:SetNumArrowGradientPoints(column, amount) end
--- Sets the position of an arrow gradient point along a column
---
--- |since_notitg_v3|
---
--- @param point int The point index (0 indexed)
--- @param column int The column (0 indexed)
--- @param offset float How far away from the receptors the point should be (where ``1`` = the size of an arrow = ``64`` pixels)
---
--- @return void
function Player:SetArrowGradientPoint(point, column, offset) end
--- Sets the color of an arrow gradient point
---
--- |since_notitg_v3|
---
--- @param point int The point index (0 indexed)
--- @param column int The column (0 indexed)
--- @param r float The red value (0 - 1)
--- @param g float The green value (0 - 1)
--- @param b float The blue value (0 - 1)
--- @param a float The alpha value (0 - 1)
---
--- @return void
function Player:SetArrowGradientColor(point, column, r, g, b, a) end
--- Sets the number of points the stealth gradient will have
---
--- |since_notitg_v3|
---
--- @param column int The column to apply it to (0 indexed)
--- @param amount int The number of points
---
--- @return void
function Player:SetNumStealthGradientPoints(column, amount) end
--- Sets the position of a stealth gradient point along a column
---
--- |since_notitg_v3|
---
--- @param point int The point index (0 indexed)
--- @param column int The column (0 indexed)
--- @param offset float How far away from the receptors the point should be (where ``1`` = the size of an arrow = ``64`` pixels)
---
--- @return void
function Player:SetStealthGradientPoint(point, column, offset) end
--- Sets the color of a stealth gradient point
---
--- |since_notitg_v3|
---
--- @param point int The point index (0 indexed)
--- @param column int The column (0 indexed)
--- @param r float The red value (0 - 1)
--- @param g float The green value (0 - 1)
--- @param b float The blue value (0 - 1)
--- @param a float The alpha value (0 - 1)
---
--- @return void
function Player:SetStealthGradientColor(point, column, r, g, b, a) end
--- Sets the number of points the path gradient will have
---
--- |since_notitg_v3|
---
--- @param column int The column to apply it to (0 indexed)
--- @param amount int The number of points
---
--- @return void
function Player:SetNumPathGradientPoints(column, amount) end
--- Sets the position of a path gradient point along a column
---
--- |since_notitg_v3|
---
--- @param point int The point index (0 indexed)
--- @param column int The column (0 indexed)
--- @param offset float How far away from the receptors the point should be (where ``1`` = the size of an arrow = ``64`` pixels)
---
--- @return void
function Player:SetPathGradientPoint(point, column, offset) end
--- Sets the color of a path gradient point
---
--- |since_notitg_v3|
---
--- @param point int The point index (0 indexed)
--- @param column int The column (0 indexed)
--- @param r float The red value (0 - 1)
--- @param g float The green value (0 - 1)
--- @param b float The blue value (0 - 1)
--- @param a float The alpha value (0 - 1)
---
--- @return void
function Player:SetPathGradientColor(point, column, r, g, b, a) end
--- Sets the arrow path's blend mode
---
--- Default value is ``normal``
---
--- |since_notitg_v3_1|
---
--- @param mode string The new blend mode to set (``normal``, ``add``, ``subtract``, ``modulate``, ``copysrc``, ``alphamask``, ``alphaknockout``, ``alphamultiply``, ``weightedmultiply``, ``invertdest``, ``noeffect``)
---
--- @return void
function Player:SetArrowPathBlendMode() end
--- Sets regions of arrows that should be hidden
---
--- A hidden regions looks like ``{ startBeat, endBeat, column }``. If column is omitted, then the hidden region applies to all columns.
---
--- |since_notitg_v4|
---
--- @param regions table[] A list of regions to hide
---
--- @return void
function Player:SetHiddenRegions(regions) end
--- Removes all hidden regions
---
--- |since_notitg_v4|
---
--- @return void
function Player:ClearHiddenRegions() end
--- Multiplies the note type (timing color) of notes
---
--- A note time multiplier looks like ``{ startBeat, multiplier }``. All notes after ``startBeat`` will be multiplied by ``multiplier``.
---
--- |since_notitg_v4|
---
--- @param multipliers table[] A list of multiplier tables
---
--- @return void
function Player:SetNoteTypeMults(multipliers) end
--- Removes all note type multipliers
---
--- |since_notitg_v4|
---
--- @return void
function Player:ClearNoteTypeMults() end
--- Simulates a step (without triggering any note hits)
---
--- This makes the receptor play its pressed animation
---
--- |since_notitg_v3|
---
--- @param column int The column to press
---
--- @return void
function Player:FakeStep(column) end
--- ?
---
--- |since_notitg_v3|
---
--- @param column int The column
---
--- @return void
function Player:FakeSetPressed(column) end
--- Simulates a step (triggering any note hits)
---
--- This also makes the receptor play its pressed animation
---
--- |since_notitg_v3|
---
--- @param column int The column to press
---
--- @return void
function Player:RealStep() end
--- Simulates a note being hit
---
--- This generates a receptor flash
---
--- Judgment values
---
--- ``1``: Fantastic
---
--- ``2``: Excellent
---
--- ``3``: Great
---
--- ``4``: Decent
---
--- ``5``: Way off
---
--- ``8``: Mine hit
---
--- |since_notitg_v3|
---
--- @param column int The column to flash (0 indexed)
--- @param judgment int The judgment
--- @param unk boolean|nil unknown
---
--- @return void
function Player:DidTapNote(column, judgment, unk) end
--- Simulates a hold note being held to completion
---
--- This generates a receptor flash
---
--- |since_notitg_v3|
---
--- @param column int The column to flash (0 indexed)
--- @param unk boolean|nil unknown
---
--- @return void
function Player:DidHoldNote(column, unk) end
--- Returns the number of taps in a range
---
--- |since_notitg_v3|
---
--- @param startBeat float The start beat
--- @param endBeat float The end beat
---
--- @return int
function Player:GetNumTapsInRange(startBeat, endBeat) end
--- Sets the player's controller (whether it should be controlled by a human or by the game)
---
--- |since_notitg_v3|
---
--- @param controller int The new controller to set (See :cpp:enum:`PlayerController`)
---
--- @return void
function Player:SetPlayerController() end
--- Sets which player's inputs should control the player
---
--- |since_notitg_v3|
---
--- @param player int ``0`` for player 1, ``1`` for player 2, ``>1`` for AutoPlay
---
--- @return void
function Player:SetInputPlayer(player) end
--- Sets the mine sound
---
--- |since_notitg_v3|
---
--- @param path string The file path to mine sound file
---
--- @return void
function Player:SetMineSound(path) end
--- Sends a judgment
---
--- Judgment numbers:
---
--- ``1``: Fantastic
---
--- ``2``: Excellent
---
--- ``3``: Great
---
--- ``4``: Decent
---
--- ``5``: Way off
---
--- ``6``: Miss
---
--- |since_notitg_v3|
---
--- @param judgment int The judgment to send
--- @param early boolean ``true`` for an early judgment, ``false`` for a late judgment
--- @param offset float|nil Optional judgment offset, in milliseconds
--- @param beat float|nil Optional beat number
---
--- @return void
function Player:SendJudgment(judgment, early, offset, beat) end
--- Checks if a player is using ``Reverse`` or not
---
--- This just checks the reverse state of column 0
---
--- |since_notitg_v4_2_0|
---
--- @return boolean
function Player:IsUsingReverse() end
--- Set the turn mod used with the "Randomize" mod
---
--- The default is ``SuperShuffle``
---
--- |since_notitg_v4_2_0|
---
--- @param mod string The turn mod to use
---
--- @return void
function Player:SetRandomVanishTransform(mod) end
--- Returns a ``Player (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Player:__tostring() end
return Player

View File

@ -0,0 +1,282 @@
--- @class PlayerStageStats
--- @field public __index table Gives you the ``PlayerStageStats`` table again
local PlayerStageStats = {}
--- Returns whether the player obtained a full combo
---
--- Returns an int: ``0`` or ``1``
---
--- |since_itg|
---
--- @return int
function PlayerStageStats:FullCombo() end
--- Returns the highest combo the player achieved
---
--- |since_itg|
---
--- @return int
function PlayerStageStats:MaxCombo() end
--- Sets the player's current combo
---
--- |since_notitg_v3|
---
--- @param combo int The new combo to set
---
--- @return void
function PlayerStageStats:SetCurrentCombo(combo) end
--- Returns the player's current combo
---
--- |since_itg|
---
--- @return int
function PlayerStageStats:GetCurrentCombo() end
--- Sets the player's score
---
--- |since_notitg_v1|
---
--- @param score int The new score to set
---
--- @return void
function PlayerStageStats:SetScore(score) end
--- Returns the player's score
---
--- |since_itg|
---
--- @return int
function PlayerStageStats:GetScore() end
--- Sets the player's dance points to ``amount``
---
--- |since_notitg_v1|
---
--- @param amount int The new dance points value to set
---
--- @return void
function PlayerStageStats:SetActualDancePoints(amount) end
--- Returns the player's actual dance points
---
--- |since_itg|
---
--- @retrun int
function PlayerStageStats:GetActualDancePoints() end
--- Sets the player's possible dance points to ``amount``
---
--- |since_notitg_v1|
---
--- @param amount int The new possible dance points value to set
---
--- @return void
function PlayerStageStats:SetPossibleDancePoints(amount) end
--- Returns the player's possible dance points
---
--- |since_itg|
---
--- @retrun int
function PlayerStageStats:GetPossibleDancePoints() end
--- Returns the player's dance points as a percentage (0 - 1)
---
--- This is the percentage score you see on the evaluation screen after completing a song (In the Simply Love theme).
---
--- |since_itg|
---
--- @return float
function PlayerStageStats:GetPercentDancePoints() end
--- Returns the player's grade
---
--- See :cpp:enum:`Grade`
---
--- @return int
function PlayerStageStats:GetGrade() end
--- Sets the number of judgments obtained with the given ``tapNoteScore``
---
--- |since_notitg_v3|
---
--- @param tapNoteScore int The judgment - see :cpp:enum:`TapNoteScore`
--- @param count int The new number of judgments to set
---
--- @return int
function PlayerStageStats:SetTapNoteScores(tapNoteScore, count) end
--- Returns the number of judgments obtained with the given ``tapNoteScore``
---
--- Returns ``-1`` for an invalid ``tapNoteScore``
---
--- |since_itg|
---
--- @param tapNoteScore int The judgment - see :cpp:enum:`TapNoteScore`
---
--- @return int
function PlayerStageStats:GetTapNoteScores(tapNoteScore) end
--- Sets the number of judgments obtained with the given ``holdNoteScore``
---
--- |since_notitg_v3|
---
--- @param holdNoteScore int The judgment - see :cpp:enum:`HoldNoteScore`
--- @param count int The new number of judgments to set
---
--- @return int
function PlayerStageStats:SetHoldNoteScores(holdNoteScore, count) end
--- Returns the number of judgments obtained with the given ``holdNoteScore``
---
--- Returns ``-1`` for an invalid ``tapNoteScore``
---
--- |since_itg|
---
--- @param holdNoteScore int The judgment - see :cpp:enum:`HoldNoteScore`
---
--- @return int
function PlayerStageStats:GetHoldNoteScores(holdNoteScore) end
--- Sets the number of judgments obtained with the given ``holdNoteScore`` for a given player
---
--- |since_notitg_v3|
---
--- @param playerNumber int The player number (1 indexed)
--- @param tapNoteScore int The judgment - see :cpp:enum:`HoldNoteScore`
--- @param count int The new number of judgments to set
---
--- @return void
function PlayerStageStats:SetTapNoteScoresForPlayer(playerNumber, tapNoteScore, count) end
--- Returns the number of judgments obtained with the given ``tapNoteScore`` for a given player
---
--- |since_itg|
---
--- @param playerNumber int The player number (1 indexed)
--- @param tapNoteScore int The judgment - see :cpp:enum:`TapNoteScore`
---
--- @return int
function PlayerStageStats:GetTapNoteScoresForPlayer(playerNumber, tapNoteScore) end
--- Returns the number of judgments obtained with the given ``holdNoteScore`` for a given player
---
--- |since_itg|
---
--- @param playerNumber int The player number (1 indexed)
--- @param holdNoteScore int The judgment - see :cpp:enum:`HoldNoteScore`
---
--- @return int
function PlayerStageStats:GetHoldNoteScoresForPlayer() end
--- Sets the number of judgments obtained with the given ``holdNoteScore`` for a given player
---
--- |since_notitg_v3|
---
--- @param playerNumber int The player number (1 indexed)
--- @param holdNoteScore int The judgment - see :cpp:enum:`HoldNoteScore`
--- @param count int The new number of judgments to set
---
--- @return void
function PlayerStageStats:SetHoldNoteScoresForPlayer(playerNumber, holdNoteScore, count) end
--- Returns the player's current life as a percentage betwen 0 - 1
---
--- |since_itg|
---
--- @return float
function PlayerStageStats:GetCurrentLife() end
--- Returns the life remaining seconds
---
--- |since_itg|
---
--- @return float
function PlayerStageStats:GetLifeRemainingSeconds() end
--- Returns how long the player survived for, in seconds
---
--- |since_itg|
---
--- @return float
function PlayerStageStats:GetSurvivalSeconds() end
--- Returns a list of steps the player has played
---
--- |since_itg|
---
--- @reutrn Steps[]
function PlayerStageStats:GetPlayedSteps() end
--- Returns a list of possible steps
---
--- |since_itg|
---
--- @reutrn Steps[]
function PlayerStageStats:GetPossibleSteps() end
--- ?
---
--- |since_notitg_v3|
---
--- @return int[]
function PlayerStageStats:GetNoteRowVector() end
--- ?
---
--- |since_notitg_v3|
---
--- @return int[]
function PlayerStageStats:GetNoteSongVector() end
--- ?
---
--- Presumably returns a list of hit offsets for all notes, in milliseconds?
---
--- |since_notitg_v3|
---
--- @return float[]
function PlayerStageStats:GetOffsetVector() end
--- ?
---
--- |since_notitg_v3|
---
--- @return table
function PlayerStageStats:GetMineRowVector() end
--- Returns the number of estimated calories burned
---
--- |since_itg|
---
--- @return float
function PlayerStageStats:GetCaloriesBurned() end
--- Returns the current possible dance points
---
--- Useful to calculate subtractive score in lua
---
--- |since_notitg_v4_2_0|
---
--- @return int
function PlayerStageStats:GetCurPossibleDancePoints() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function PlayerStageStats:__eq(other) end
--- Returns a ``PlayerStageStats (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function PlayerStageStats:__tostring() end
return PlayerStageStats

186
.typings/Polygon.lua Normal file
View File

@ -0,0 +1,186 @@
--- @class Polygon: Actor
--- @field public __index table Gives you the ``Polygon`` table again
local Polygon = {}
--- Sets the number of vertices for the polygon actor
---
--- Do this before manipulating other vertices
---
--- |since_notitg_unk|
---
--- @param count int The number of vertices
---
--- @return void
function Polygon:SetNumVertices(count) end
--- Returns the number of vertices the polygon actor has
---
--- |since_notitg_unk|
---
--- @return int
function Polygon:GetNumVertices() end
--- Sets a vertex's position
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
--- @param x float The vertex's X position
--- @param y float The vertex's Y position
--- @param z float The vertex's Z position
---
--- @return void
function Polygon:SetVertexPosition(index, x, y, z) end
--- Returns a vertex's position
---
--- This function returns multiple values - use it as such:
---
--- ``local x, y, z = polygon:GetVertexPosition(0)``
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
---
--- @return multiple
function Polygon:GetVertexPosition(index) end
--- Sets a vertex's normal
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
--- @param x float The X component of the vertex's normal
--- @param y float The Y component of the vertex's normal
--- @param z float The Z component of the vertex's normal
---
--- @return void
function Polygon:SetVertexNormal(index, x, y, z) end
--- Returns a vertex's normal
---
--- This function returns multiple values - use it as such:
---
--- ``local x, y, z = polygon:GetVertexNormal(0)``
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
---
--- @return multiple
function Polygon:GetVertexNormal(index) end
--- Sets a vertex's color
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
--- @param r float The red value
--- @param g float The green value
--- @param b float The blue value
--- @param a float The alpha value
---
--- @return void
function Polygon:SetVertexColor(index, r, g, b, a) end
--- Returns a vertex's color
---
--- This function returns multiple values - use it as such:
---
--- ``local r, g, b, a = polygon:GetVertexColor(0)``
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
---
--- @return multiple
function Polygon:GetVertexColor() end
--- Sets a vertex's alpha
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
--- @param a float The alpha value
---
--- @return void
function Polygon:SetVertexAlpha(index, a) end
--- Sets a vertex's texture coordinate
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
--- @param u float The U value (X position)
--- @param v float The V value (Y position)
--- @param w float|nil The W value (Z position - irrelevant for 2D textures)
---
--- @return void
function Polygon:SetVertexTexCoord(index, u, v, w) end
--- Returns a vertex's texture coordinate
---
--- This function returns multiple values - use it as such:
---
--- ``local u, v, w = polygon:GetVertexTexCoord(0)``
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
---
--- @return multiple
function Polygon:GetVertexTexCoord(index) end
--- Sets the polygon drawing mode (Lines or filled)
---
--- |since_notitg_unk|
---
--- @param mode int The new mode to set - see :cpp:enum:`PolygonMode`
---
--- @return void
function Polygon:SetPolygonMode(mode) end
--- Sets the polygon actor's draw mode
---
--- |since_notitg_unk|
---
--- @param mode string The draw mode (``triangles`` or ``quads`` or ``quadstrip`` or ``fan`` or ``strip`` or ``linestrip``)
---
--- @return void
function Polygon:SetDrawMode(mode) end
--- ???
---
--- |since_notitg_unk|
---
--- @param index int The vertex index (0 indexed)
---
--- @return void
function Polygon:AddDrawSplit(index) end
--- Sets the width for drawing lines (if the actor is in line polygon mode)
---
--- |since_notitg_unk|
---
--- @param width float The line width
---
--- @return void
function Polygon:SetLineWidth(width) end
--- Sets the polygon actor's texture
---
--- |since_notitg_unk|
---
--- @param texture RageTexture the texture to set
---
--- @return void
function Polygon:SetTexture(texture) end
--- Returns the polygon actor's texture
---
--- |since_notitg_unk|
---
--- @return RageTexture
function Polygon:GetTexture() end
return Polygon

42
.typings/PrefsManager.lua Normal file
View File

@ -0,0 +1,42 @@
--- @class PrefsManager
--- @field public __index table Gives you the ``PrefsManager`` table again
local PrefsManager = {}
--- Sets the value of a preference
---
--- |since_itg|
---
--- @param pref string The preference to set
--- @param value any The new value to set
---
--- @return void
function PrefsManager:SetPreference(pref, value) end
--- Returns the value of a preference
---
--- Eg: ``local audio_offset = PREFSMAN:GetPreference('GlobalOffsetSeconds')``
---
--- |since_itg|
---
--- @param pref string The preference to get
---
--- @return any
function PrefsManager:GetPreference(pref) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function PrefsManager:__eq(other) end
--- Returns a ``PrefsManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function PrefsManager:__tostring() end
return PrefsManager

293
.typings/Profile.lua Normal file
View File

@ -0,0 +1,293 @@
-- Note for future me: You can't simply just type `Profile` into a Lua console to get info about methods in `Profile` -
-- instead, you can do something like `PROFILEMAN:GetMachineProfile().__index`
--- @class Profile
--- @field public __index table Gives you the ``Profile`` table again
local Profile = {}
--- Returns the possible score of courses matched by ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return float
function Profile:GetCoursesPossible() end
--- Returns a composite of high scores on every course matched by ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return float
function Profile:GetCoursesActual(stepsType, difficulty) end
--- Returns the percentage of completed courses matching ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return float
function Profile:GetCoursesPercentComplete() end
--- Returns the possible score of songs matched by ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return float
function Profile:GetSongsPossible() end
--- Returns a composite of high scores on every song matched by ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return float
function Profile:GetSongsActual() end
--- Returns the percentage of completed songs matching ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return float
function Profile:GetSongsPercentComplete() end
--- Returns the total number of songs played
---
--- |since_itg|
---
--- @return int
function Profile:GetTotalNumSongsPlayed() end
--- Returns the number of steps scored on a specific grade, matching ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
--- @param grade int The grade - see :cpp:enum:`Grade`
---
--- @return int
function Profile:GetTotalStepsWithTopGrade(stepsType, difficulty, grade) end
--- Returns the number of trails scored on a specific grade, matching ``stepsType`` and ``difficulty``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
--- @param grade int The grade - see :cpp:enum:`Grade`
---
--- @return int
function Profile:GetTotalTrailsWithTopGrade() end
--- Returns the number of times a song has been played (and completed)
---
--- |since_notitg_v1|
---
--- @param song Song The song
---
--- @return int
function Profile:GetSongNumTimesPlayed() end
--- Sets the profile's goal type
---
--- |since_itg|
---
--- @param goalType int The goal type - see :cpp:enum:`GoalType`
---
--- @return void
function Profile:SetGoalType() end
--- Returns the profile's goal type
---
--- See :cpp:enum:`GoalType`
---
--- |since_itg|
---
--- @return int
function Profile:GetGoalType() end
--- Sets a new goal, to ``calories``
---
--- |since_itg|
---
--- @param seconds The new goal to set, in calories
---
--- @return void
function Profile:SetGoalCalories(calories) end
--- Returns the number of calories needed to reach the goal
---
--- |since_itg|
---
--- @return int
function Profile:GetGoalCalories() end
--- Sets a new goal, to ``seconds``
---
--- |since_itg|
---
--- @param seconds The new goal to set, in seconds
---
--- @return void
function Profile:SetGoalSeconds(seconds) end
--- Returns the number of seconds needed to reach the goal
---
--- |since_itg|
---
--- @return int
function Profile:GetGoalSeconds() end
--- Returns the estimated number of calories burned today
---
--- |since_itg|
---
--- @return float
function Profile:GetCaloriesBurnedToday() end
--- Sets the player's weight in pounds
---
--- |since_itg|
---
--- @param pounds int The new weight to set, in pounds
---
--- @return void
function Profile:SetWeightPounds(pounds) end
--- Returns the player's weight in pounds
---
--- |since_itg|
---
--- @return int
function Profile:GetWeightPounds() end
--- ?
---
--- |since_notitg_v3_1|
---
--- @param song string The song name
--- @param steps int The steps difficulty - see :cpp:enum:`Difficulty`
---
--- @return void
function Profile:GetHighScoreForSongAndSteps(song, steps) end
--- Clears high scores for a song
---
--- |since_notitg_v4|
---
--- @param song string The song name
---
--- @return void
function Profile:ClearHighScoresForSong(song) end
--- Clears a step's high scores for a song
---
--- |since_notitg_v4|
---
--- @param song string The song name
--- @param steps int The steps difficulty - see :cpp:enum:`Difficulty`
---
--- @return void
function Profile:ClearHighScoresForSongAndSteps(song, steps) end
--- Table of arbitrary data that persists between runs of the game
---
--- Scripts can persist data (Eg: Highscores in minigames) by writing to this table.
---
--- Example usage:
---
--- .. code-block:: lua
---
--- local new_score = 9001
---
--- local profile_saved = PROFILEMAN:GetMachineProfile():GetSaved()
---
--- -- If there was no saved data before, or we got a better score than the previous highscore, save it
--- if
--- profile_saved.yourname_yoursong_highscore == nil or
--- profile_saved.yourname_yoursong_highscore < new_score
--- then
--- profile_saved.yourname_yoursong_highscore = new_score
--- end
---
--- Note that the names of keys in this table have to be shared between all charts a user may have installed. It's
--- suggested to prefix key names with a unique identifier, such as your name/the name of the song you're modding. You
--- can also nest tables inside the `GetSaved()` table, if you want to organize.
---
--- |since_itg|
---
--- @return table
function Profile:GetSaved() end
--- Returns whether the song with the given song ID is unlocked for the player
---
--- |since_itg|
---
--- @param id string The song ID
---
--- @return boolean
function Profile:IsCodeUnlocked(id) end
--- Returns the highscore for a course and trail
---
--- |since_notitg_v4_2_0|
---
--- @param course Course The course
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return HighScore
function Profile:GetHighScoreForCourseAndTrail(course, difficulty, stepsType) end
--- Clears scores for a course and trail
---
--- |since_notitg_v4_2_0|
---
--- @param course Course The course
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return void
function Profile:ClearHighScoresForCourseAndTrail(course, difficulty, stepsType) end
--- Clears scores for a course
---
--- |since_notitg_v4_2_0|
---
--- @param course Course The course
---
--- @return void
function Profile:ClearHighScoresForCourse(course) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function Profile:__eq(other) end
--- Returns a ``Profile (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Profile:__tostring() end
return Profile

View File

@ -0,0 +1,53 @@
--- @class ProfileManager
--- @field public __index table Gives you the ``ProfileManager`` table again
local ProfileManager = {}
--- Returns the machine's profile
---
--- |since_itg|
---
--- @return Profile
function ProfileManager:GetMachineProfile() end
--- Saves the machine's profile
---
--- |since_itg|
---
--- @return void
function ProfileManager:SaveMachineProfile() end
--- Returns the profile for a given player
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return Profile
function ProfileManager:GetProfile(playerNumber) end
--- Returns whether the profile for a given player is persistent
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return boolean
function ProfileManager:IsPersistentProfile(playerNumber) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function ProfileManager:__eq(other) end
--- Returns a ``ProfileManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ProfileManager:__tostring() end
return ProfileManager

28
.typings/RadarValues.lua Normal file
View File

@ -0,0 +1,28 @@
--- @class RadarValues
--- @field public __index table Gives you the ``RadarValues`` table again
local RadarValues = {}
--- Returns the value of ``category``
---
--- |since_itg|
---
--- @param category int The radar category to get a value for - see :cpp:enum:`RadarCategory`
function RadarValues:GetValue(category) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RadarValues:__eq() end
--- Returns a ``RadarValues (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RadarValues:__tostring() end
return RadarValues

283
.typings/RageDisplay.lua Normal file
View File

@ -0,0 +1,283 @@
--- @class RageDisplay
--- @field public __index table Gives you the ``RageDisplay`` table again
local RageDisplay = {}
--- Returns the vertices drawn per frame
---
--- |since_notitg_v1|
---
--- @return int
function RageDisplay:GetVPF() end
--- Returns the frames drawn per second
---
--- |since_notitg_v1|
---
--- @return int
function RageDisplay:GetFPS() end
--- Returns the cumulative (average) FPS
---
--- |since_notitg_v1|
---
--- @return int
function RageDisplay:GetCumFPS() end
--- Applies a shader to *all* on-screen actors
---
--- |since_notitg_v3|
---
--- @param shader RageShaderProgram The shader program to apply
---
--- @return void
function RageDisplay:ShaderFuck(shader) end
--- Undoes :lua:meth:`RageDisplay.ShaderFuck`
---
--- |since_notitg_v3|
---
--- @return void
function RageDisplay:ClearShaderFuck() end
--- Sets the game window's position and size
---
--- |since_notitg_v3|
---
--- @param xPos float The center X position, in pixels
--- @param yPos float The center Y position, in pixels
--- @param xZoom float The window X scale (Where one unit is the theme's width - which is typically 640)
--- @param yZoom float The window Y scale (Where one unit is the theme's height)
---
--- @return void
function RageDisplay:SetWindow(xPos, yPos, xZoom, yZoom) end
--- Sets the window center's X position, in pixels
---
--- |since_notitg_v3|
---
--- @param x float The new X position to set
---
--- @return void
function RageDisplay:SetWindowX(x) end
--- Returns the window center's X position, in pixels
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetWindowX() end
--- Sets the window center's Y position, in pixels
---
--- |since_notitg_v3|
---
--- @param y float The new Y position to set
---
--- @return void
function RageDisplay:SetWindowY(y) end
--- Returns the window center's Y position, in pixels
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetWindowY() end
--- Sets the window's X scale
---
--- |since_notitg_v3|
---
--- @param xZoom float The window X scale (Where one unit is the theme's width - which is typically 640)
---
--- @return void
function RageDisplay:SetWindowZoomX(xZoom) end
--- Sets the window's Y scale
---
--- |since_notitg_v3|
---
--- @param yZoom float The window Y scale (Where one unit is the theme's height)
---
--- @return void
function RageDisplay:SetWindowZoomY(yZoom) end
--- Sets the window's X and Y scale
---
--- |since_notitg_v4_2_0|
---
--- @param xZoom float The window X scale (Where one unit is the theme's width - which is typically 640)
---
--- @param yZoom float The window Y scale (Where one unit is the theme's height)
---
--- @return void
function RageDisplay:SetWindowZoom(xZoom, yZoom) end
--- Returns the window's X scale
---
--- Note: one unit represents the theme's height
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetWindowZoomX() end
--- Returns the window's Y scale
---
--- Note: one unit represents the theme's height
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetWindowZoomY() end
--- Sets the window's width, in pixels
---
--- |since_notitg_v3|
---
--- @param width float The new width, in pixels
---
--- @return void
function RageDisplay:SetWindowWidth(width) end
--- Returns the window's width, in pixels
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetWindowWidth() end
--- Sets the window's height, in pixels
---
--- |since_notitg_v3|
---
--- @param height float The new height, in pixels
---
--- @return void
function RageDisplay:SetWindowHeight(height) end
--- Returns the window's height, in pixels
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetWindowHeight() end
--- Returns the vendor of the graphics driver
---
--- |since_notitg_v2|
---
--- @return string
function RageDisplay:GetVendor() end
--- Adds ``x`` to the window's current horizontal position
---
--- |since_notitg_v3|
---
--- @param x float The horizontal offset to add, in pixels
---
--- @return void
function RageDisplay:SetWindowAddX(x) end
--- Adds ``y`` to the window's current vertical position
---
--- |since_notitg_v3|
---
--- @param y float The vertical offset to add, in pixels
---
--- @return void
function RageDisplay:SetWindowAddY(y) end
--- Returns the window width
---
--- |since_notitg_v1|
---
--- @return float
function RageDisplay:GetDisplayWidth() end
--- Returns the window height
---
--- |since_notitg_v1|
---
--- @return float
function RageDisplay:GetDisplayHeight() end
--- Sets the window position relative to the center of the screen
---
--- Also seems to reset the window size and hide window borders for whatever reason?
---
--- Since |notitg_v4_2_0|, this now accounts for window borders.
---
--- |since_notitg_v3|
---
--- @param x float The X position, in pixels
--- @param y float the Y position, in pixels
---
--- @return void
function RageDisplay:SetWindowPosition(x, y) end
--- Sets the window position relative to the center of the screen, and its size
---
--- Since |notitg_v4_2_0|, this now accounts for window borders.
---
--- |since_notitg_v3|
---
--- @param x float The X position, in pixels
--- @param y float the Y position, in pixels
--- @param w float The window width, in pixels
--- @param h float the window height, in pixels
---
--- @return void
function RageDisplay:SetWindowPositionAndSize(x, y, w, h) end
--- Returns the main monitor's width
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetDesktopWidth() end
--- Returns the main monitor's height
---
--- |since_notitg_v3|
---
--- @return float
function RageDisplay:GetDesktopHeight() end
--- Offset the position and size of the top screen/overlay screens
---
--- |since_notitg_v1|
---
--- @param translateX int The X offset
--- @param translateY int The Y offset
--- @param addX int The width to add
--- @param addY int The height to add
function RageDisplay:ChangeCentering(translateX, translateY, addX, addY) end
--- Toggle whether the window will have a border
---
--- This will reset at the end of a song, ``F3 + 8`` will also reset it.
---
--- |since_notitg_v4_2_0|
---
--- @param enable boolean Whether the window should have a border
---
--- @return void
function RageDisplay:SetBorderless(enable) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RageDisplay:__eq(other) end
--- Returns a ``RageDisplay (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageDisplay:__tostring() end
return RageDisplay

View File

@ -0,0 +1,33 @@
--- @class RageFileManager
--- @field public __index table Gives you the ``RageFileManager`` table again
local RageFileManager = {}
--- Loads a Lua file?
--- (Doesn't work, it returns the function itself and the string)
---
--- |since_notitg_v3_1|
---
--- This function returns two values, a function, and a string
---
--- @param path string Presumably a path to a Lua file to load
---
--- @return multiple
function RageFileManager:LuaLoadFile(path) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RageFileManager:__eq(other) end
--- Returns a ``RageFileManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageFileManager:__tostring() end
return RageFileManager

37
.typings/RageInput.lua Normal file
View File

@ -0,0 +1,37 @@
--- @class RageInput
--- @field public __index table Gives you the ``RageInput`` table again
local RageInput = {}
--- Returns a list of connected input devices
---
--- Eg: ``{ "Wine Keyboard", "Win32_MIDI", "MonkeyKeyboard" }``
---
--- |since_itg|
---
--- @return string[]
function RageInput:GetDescriptions() end
--- Reloads all input devices
---
--- |since_notitg_v1|
---
--- @return void
function RageInput:Reset() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RageInput:__eq(other) end
--- Returns a ``RageInput (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageInput:__tostring() end
return RageInput

View File

@ -0,0 +1,217 @@
--- @class RageShaderProgram
--- @field public __index table Gives you the ``RageShaderProgram`` table again
local RageShaderProgram = {}
--- Sets an int/bool uniform
---
--- |since_notitg_v3|
---
--- @param uniformName string The name of the uniform to set
--- @param value int The value to set on uniform
---
--- @return void
function RageShaderProgram:uniform1i(uniformName, value) end
--- Sets an int/bool uniform, or an array of int/bool uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 1 element, or any multiple of 1 for setting arrays)
---
--- @return void
function RageShaderProgram:uniform1iv(uniformName, values) end
--- Sets a float uniform
---
--- |since_notitg_v3|
---
--- @param uniformName string The name of the uniform to set
--- @param value float The value to set on the uniform
---
--- @return void
function RageShaderProgram:uniform1f(uniformName, value) end
--- Sets a float uniform, or an array of float uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 1 element, or any multiple of 1 for setting arrays)
---
--- @return void
function RageShaderProgram:uniform1fv(uniformName, values) end
--- Sets a \*vec2 uniform
---
--- |since_notitg_v3|
---
--- @param uniformName string The name of the uniform to set
--- @param x float The X value to set on the uniform
--- @param y float The Y value to set on the uniform
---
--- @return void
function RageShaderProgram:uniform2f(uniformName, x, y) end
--- Sets a \*vec2 uniform, or an array of \*vec2 uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 2 elements, or any multiple of 2 for setting arrays)
---
--- @return void
function RageShaderProgram:uniform2fv(uniformName, values) end
--- Sets a \*vec3 uniform
---
--- |since_notitg_v3|
---
--- @param uniformName string The name of the uniform to set
--- @param x float The X value to set on the uniform
--- @param y float The Y value to set on the uniform
--- @param z float The Z value to set on the uniform
---
--- @return void
function RageShaderProgram:uniform3f(uniformName, x, y, z) end
--- Sets a \*vec3 uniform, or an array of \*vec3 uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 3 elements, or any multiple of 3 for setting arrays)
---
--- @return void
function RageShaderProgram:uniform3fv(uniformName, values) end
--- Sets a \*vec4 uniform
---
--- |since_notitg_v3|
---
--- @param uniformName string The name of the uniform to set
--- @param x float The X value to set on the uniform
--- @param y float The Y value to set on the uniform
--- @param z float The Z value to set on the uniform
--- @param w float The W value to set on the uniform
---
--- @return void
function RageShaderProgram:uniform4f(uniformName, x, y, z, w) end
--- Sets a \*vec4 uniform, or an array of \*vec4 uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 4 elements, or any multiple of 4 for setting arrays)
---
--- @return void
function RageShaderProgram:uniform4fv(uniformName, values) end
--- Sets a 2x2 matrix uniform, or an array of 2x2 matrix uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 4 elements, or any multiple of 4 for setting arrays)
---
--- @return void
function RageShaderProgram:uniformMatrix2fv() end
--- Sets a 3x3 matrix uniform, or an array of 3x3 matrix uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 9 elements, or any multiple of 9 for setting arrays)
---
--- @return void
function RageShaderProgram:uniformMatrix3fv(uniformName, values) end
--- Sets a 4x4 matrix uniform, or an array of 4x4 matrix uniforms
---
--- |since_notitg_v4|
---
--- @param uniformName string The name of the uniform to set
--- @param values table The values to set (This should be a table with 16 elements, or any multiple of 16 for setting arrays)
---
--- @return void
function RageShaderProgram:uniformMatrix4fv(uniformName, values) end
--- Sets a sampler uniform
---
--- A :lua:class:`RageTexture` object is obtainable with ``:GetTexture()`` on another actor. You may have to create a "texture provider" actor to if you don't have any other actors that use your desired texture: that is, a simple sprite actor that does nothing and remains hidden throughout the entire duration of the chart.
---
--- |since_notitg_v3|
---
--- @param uniformName string The name of the uniform to set
--- @param texture RageTexture The texture to set on the sampler
---
--- @return void
function RageShaderProgram:uniformTexture(uniformName, texture) end
--- Compiles and links a new shader program
---
--- This will use defines specified with :lua:meth:`RageShaderProgram.define`.
---
--- |since_notitg_v3|
---
--- @param vertCode string The vertex shader code to compile, or an empty string to use NotITG's default vertex shader
--- @param fragCode string The fragment shader code to compile, or an empty string to use NotITG's default fragment shader
---
--- @return void
function RageShaderProgram:compile(vertCode, fragCode) end
--- Immediately recompile/relink the shader program
---
--- Useful in conjunction with :lua:meth:`RageShaderProgram.define` or :lua:meth:`RageShaderProgram.clearDefine`, since those functions do not automatically recompile/relink the shader program.
---
--- Despite being named ``compileImmediate``, this may not compile a shader immediately, but rather may defer compilation to when the shader is first used.
---
--- |since_notitg_v4|
---
--- @return void
function RageShaderProgram:compileImmediate() end
--- Injects a ``#define`` line at the top of shader code
---
--- Since |notitg_v4_2_0|, this now functions with shader code that contains ``#version`` directives.
---
--- This does not automatically recompile/relink the shader program - use :lua:meth:`RageShaderProgram.compileImmediate` to do that.
---
--- |since_notitg_v4|
---
--- @param key string The name of the macro to define
--- @param value string|boolean|number|nil What to define the macro as
---
--- @return void
function RageShaderProgram:define(key, value) end
--- Removes a ``#define`` previously added with :lua:meth:`RageShaderProgram.define`
---
--- This does not automatically recompile/relink the shader program - use :lua:meth:`RageShaderProgram.compileImmediate` to do that.
---
--- |since_notitg_v4|
---
--- @param key string The name of the macro to remove
---
--- @return void
function RageShaderProgram:clearDefine(key) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RageShaderProgram:__eq(other) end
--- Gives you a ``RageShaderProgram (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageShaderProgram:__tostring() end
return RageShaderProgram

188
.typings/RageSound.lua Normal file
View File

@ -0,0 +1,188 @@
--- @class RageSound
--- @field public __index table Gives you the ``RageSound`` table again
local RageSound = {}
--- Plays the sound from the beginning
---
--- If you want to resume a paused sound, use :lua:meth:`RageSound.Pause`
---
--- |since_notitg_v3|
---
--- @return void
function RageSound:Play() end
--- Stops the sound
---
--- |since_notitg_v3|
---
--- @return void
function RageSound:Stop() end
--- Pauses/resumes sound playback
---
--- Overridden from :lua:meth:`Actor.pause`
---
--- |since_notitg_v3|
---
--- @param enable boolean ``true`` to pause, ``false`` to unpause
---
--- @return void
function RageSound:Pause() end
--- Returns whether the sound is paused
---
--- |since_notitg_v3|
---
--- @return boolean
function RageSound:IsPaused() end
--- Returns whether the sound is "playing"
---
--- Will still return true even if the sound is paused
---
--- |since_notitg_v3|
---
--- @return boolean
function RageSound:IsPlaying() end
--- Sets the sound's volume
---
--- |since_notitg_v1|
---
--- @param volume float The new volume to set (0 - 1)
---
--- @return void
function RageSound:volume(volume) end
--- Returns the sound's volume
---
--- |since_notitg_v3|
---
--- @return float
function RageSound:GetVolume() end
--- Sets the sound's panning
---
--- |since_notitg_v1|
---
--- @param balance float The new panning to apply (0 = left, 0.5 = center, 1 = right)
---
--- @return void
function RageSound:pan(balance) end
--- Returns the sound's panning
---
--- |since_notitg_v3|
---
--- @return float
function RageSound:GetPan() end
--- Sets the sound's playback speed
---
--- |since_notitg_v1|
---
--- @param speed float The new speed to apply (0 - 100)
---
--- @return void
function RageSound:speed(speed) end
--- An alias for :lua:meth:`RageSound.speed`
---
--- |since_notitg_v1|
---
--- @param speed float The new speed to apply (0 - 100)
---
--- @return void
function RageSound:pitch() end
--- Sets the current sound's playback position, in seconds
---
--- |since_notitg_v3|
---
--- @return void
function RageSound:SetSoundPosition() end
--- Returns the current sound's playback position, in seconds
---
--- |since_notitg_v3|
---
--- @return float
function RageSound:GetSoundPosition() end
--- Sets the sound's start point, in seconds
---
--- |since_notitg_v3|
---
--- @param start float The new start point, in seconds
---
--- @return void
function RageSound:startsecond() end
--- Returns the start point, in seconds
---
--- |since_notitg_v3|
---
--- @return float
function RageSound:GetStartSecond() end
--- Returns the length of the sound, in seconds
---
--- |since_notitg_v3|
---
--- @return float
function RageSound:GetLengthSeconds() end
--- Sets the sound's stop mode
---
--- A stop mode of ``auto`` will reset it to the default
---
--- |since_notitg_v3|
---
--- @param mode string The new stop mode to set (``stop``, ``loop``, ``continue``, ``auto``)
---
--- @return void
function RageSound:stopmode() end
--- Returns the sound's stop mode
---
--- |since_notitg_v3|
---
--- @return string
function RageSound:GetStopMode() end
--- Sets a sound property
---
--- |since_notitg_v1|
---
--- @param param string The parameter to set (``StartSecond``, ``Pitch``, ``Speed``, ``Pan``, ``Volume``)
--- @param value float The value to assign
---
--- @return void
function RageSound:SetParam(param, value) end
--- Loads a new sound
---
--- |since_notitg_v3|
---
--- @param path string The filepath of the new sound file to load
---
--- @return void
function RageSound:Load(path) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RageSound:__eq(other) end
--- Returns a ``RageSound (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageSound:__tostring() end
return RageSound

136
.typings/RageTexture.lua Normal file
View File

@ -0,0 +1,136 @@
--- @class RageTexture
--- @field public __index table Gives you the ``RageTexture`` table again
local RageTexture = {}
--- Returns the width of the texture
---
--- This will always be a power-of-two. For example, an image with a size of 1920x1080 will be loaded into a 2048x2048 texture
---
--- |since_notitg_v1|
---
--- @return float
function RageTexture:GetTextureWidth() end
--- Returns the height of the texture
---
--- This will always be a power-of-two. For example, an image with a size of 1920x1080 will be loaded into a 2048x2048 texture
---
--- |since_notitg_v1|
---
--- @return float
function RageTexture:GetTextureHeight() end
--- Returns the image width, without padding
---
--- For example, a 1920x1080 image will return 1920, despite the texture padding the width out to 2048
---
--- |since_notitg_v1|
---
--- @return float
function RageTexture:GetImageWidth() end
--- Returns the image height, without padding
---
--- For example, a 1920x1080 image will return 1080, despite the texture padding the height out to 2048
---
--- |since_notitg_v1|
---
--- @return float
function RageTexture:GetImageHeight() end
--- Returns the width of the texture's source
---
--- |since_notitg_v1|
---
--- @return float
function RageTexture:GetSourceWidth() end
--- Returns the height of the texture's source
---
--- |since_notitg_v1|
---
--- @return float
function RageTexture:GetSourceHeight() end
--- Returns the bounding rectangle of an image on a texture
---
--- This function returns multiple values - use it as such:
---
--- ``local left, top, right, bottom = texture:GetTextureCoordRect(0)``
---
--- |since_notitg_v1|
---
--- @param frame int The frame number to fetch the rect for (0 indexed)
---
--- @return multiple
function RageTexture:GetTextureCoordRect(frame) end
--- Returns the filepath where a texture was loaded from
---
--- Note that not all texture originate from a valid path. For example, a texture created by an :lua:class:`ActorFrameTexture` has a path like ``ActorFrameTexture 2``.
---
--- |since_notitg_v1|
---
--- @return string
function RageTexture:GetPath() end
--- Reloads the texture from the drive
---
--- Returns a function - not sure why, but calling it seems to cause a crash (access violation)
---
--- |since_notitg_v1|
---
--- @return function
function RageTexture:Reload() end
--- Returns the number of frames in an animated texture
---
--- |since_notitg_v1|
---
--- @return int
function RageTexture:GetNumFrames() end
--- Sets the playback position of an animated texture
---
--- |since_notitg_v1|
---
--- @param position float The new playback positon to set
---
--- @return void
function RageTexture:position() end
--- Sets whether an animated texture should loop or not
---
--- |since_notitg_v1|
---
--- @param enable boolean ``true`` to loop the animation, ``false`` to not loop
---
--- @return void
function RageTexture:loop() end
--- Sets the playback rate of an animated texture
---
--- |since_notitg_v1|
---
--- @param rate float The playback rate to set
---
--- @return void
function RageTexture:rate() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function RageTexture:__eq(other) end
--- Returns a ``RageTexture (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageTexture:__tostring() end
return RageTexture

View File

@ -0,0 +1,28 @@
--- @class RageTextureRenderTarget: RageTexture
--- @field public __index table Gives you the ``RageTextureRenderTarget`` table again
local RageTextureRenderTarget = {}
--- Begins rendering to the texture
---
--- |since_notitg_v1|
---
--- @param preserveTexture boolean Whether the currently stored texture should be preserved (not cleared) before rendering
---
--- @return void
function RageTextureRenderTarget:BeginRenderingTo() end
--- Stops rendering to the texture
---
--- |since_notitg_v1|
---
--- @return void
function RageTextureRenderTarget:FinishRenderingTo() end
--- Returns a ``RageTextureRenderTarget (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function RageTextureRenderTarget:__tostring() end
return RageTextureRenderTarget

View File

@ -0,0 +1,42 @@
--- @class ScreenGameplay: ActorFrame
--- @field public __index table Gives you the ``ScreenGameplay`` table again
local ScreenGameplay = {}
--- Sets whether the game should be paused
---
--- |since_notitg_v1|
---
--- @param pause boolean ``true`` to pause, ``false`` to unpause
---
--- @return void
function ScreenGameplay:PauseGame(pause) end
--- Returns the amount of life remaining for a player
---
--- This is a value between 0 - 1
---
--- |since_notitg_v1|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return float
function ScreenGameplay:GetLife(playerNumber) end
--- Sets the amount of life remaining for a player
---
--- |since_notitg_v1|
---
--- @param playerNumber int The player number (0 indexed)
--- @param life float The new life percentage to set (0 - 1)
---
--- @return void
function ScreenGameplay:SetLife(playerNumber, life) end
--- Returns a ``ScreenGameplay (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ScreenGameplay:__tostring() end
return ScreenGameplay

111
.typings/ScreenManager.lua Normal file
View File

@ -0,0 +1,111 @@
--- @class ScreenManager
--- @field public __index table Gives you the ``ScreenManager`` table again
local ScreenManager = {}
--- Shows a message on screen for a few seconds
---
--- Useful for debugging!
---
--- |since_itg|
---
--- @param message string The message to show
---
--- @return void
function ScreenManager:SystemMessage(message) end
--- Like :lua:meth:`ScreenManager.SystemMessage`, but does not animate the message in
---
--- |since_itg|
---
--- @param message string The message to show
---
--- @return void
function ScreenManager:SystemMessageNoAnimate(message) end
--- Overlays a message on top of the entire screen
---
--- |since_itg|
---
--- @param message string The message to show
---
--- @return void
function ScreenManager:OverlayMessage(message) end
--- Hides any message previously shown with :lua:meth:`ScreenManager.OverlayMessage`
---
--- |since_itg|
---
--- @return void
function ScreenManager:HideOverlayMessage() end
--- Switches to the specified screen
---
--- |since_itg|
---
--- @param screenName string The name of the screen to switch to
---
--- @return void
function ScreenManager:SetNewScreen(screenName) end
--- Returns the currently displayed screen
---
--- Eg: This will give you a :lua:class:`ScreenGameplay` instance if called during gameplay
---
--- |since_itg|
---
--- @return Actor
function ScreenManager:GetTopScreen() end
--- Set which screens receive game input
---
--- |since_notitg_v4|
---
--- @param mode int ``0`` for all screens, ``1`` for only overlay screens, ``2`` for no screens
---
--- @return void
function ScreenManager:SetInputMode() end
--- ?
---
--- |since_notitg_v4|
---
--- @return ActorFrame
function ScreenManager:GetSharedBGA() end
--- Returns a list of screens overlaid on top of the main screen
---
--- |since_notitg_v4|
---
--- @return ActorFrame[]
function ScreenManager:GetOverlayScreens() end
--- Returns a child of the top screen
---
--- Will return ``nil`` if the child doesn't exist
---
--- Also see :lua:meth:`ScreenManager.GetTopScreen`
---
--- |since_notitg_v4|
---
--- @param child string|int The name or index of the child to get
---
--- @return Actor|nil
function ActorFrame:__call(child) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function ScreenManager:__eq(other) end
--- Returns an ``ScreenManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ScreenManager:__tostring() end
return ScreenManager

348
.typings/Song.lua Normal file
View File

@ -0,0 +1,348 @@
--- @class Song
--- @field public __index table Gives you the ``Song`` table again
local Song = {}
--- Returns a list of all steps for the song
---
--- |since_itg|
---
--- @return Step[]
function Song:GetAllSteps() end
--- Returns the path to the song's background image
---
--- Can return ``nil`` if the song has no background image
---
--- |since_itg|
---
--- @return string|nil
function Song:GetBackgroundPath() end
--- Returns the path to the song's banner image
---
--- Can return ``nil`` if the song has no banner image
---
--- |since_itg|
---
--- @return string|nil
function Song:GetBannerPath() end
--- Returns the song title for display
---
--- |since_itg|
---
--- @return string
function Song:GetDisplayMainTitle() end
--- Returns the transliterated song title
---
--- |since_itg|
---
--- @return string
function Song:GetTranslitMainTitle() end
--- Returns the sub title for display
---
--- Returns an empty string is no subtitle is set
---
--- |since_itg|
---
--- @return string
function Song:GetDisplaySubTitle() end
--- Returns the transliterated sub title
---
--- Returns an empty string is no subtitle is set
---
--- |since_itg|
---
--- @return string
function Song:GetTranslitSubTitle() end
--- Returns the main title and sub title for display (``mainTitle .. " " .. subTitle``)
---
--- |since_itg|
---
--- @return string
function Song:GetDisplayFullTitle() end
--- Returns the transliterated main title and sub title (``mainTitleTranslit .. " " .. subTitleTranslit``)
---
--- Returns an empty string is no subtitle is set
---
--- |since_itg|
---
--- @return string
function Song:GetTranslitFullTitle() end
--- Returns the artist name for display
---
--- |since_itg|
---
--- @return string
function Song:GetDisplayArtist() end
--- Returns the transliterated artist name
---
--- |since_itg|
---
--- @return string
function Song:GetTranslitArtist() end
--- Returns whether the song was loaded from a player's USB drive
---
--- |since_itg|
---
--- @return boolean
function Song:IsCustomSong() end
--- Returns the lowest BPM of the song
---
--- |since_notitg_v4|
---
--- @return float
function Song:GetMinBPM() end
--- Returns the highest BPM of the song
---
--- |since_notitg_v4|
---
--- @return float
function Song:GetMaxBPM() end
--- Returns the note data from one of the song's steps
---
--- See :ref:`note_data_format`
---
--- |since_notitg_v4|
---
--- @param steps Steps The steps to fetch note data from
--- @param useSeconds boolean|nil If ``true``, the returned note data will use seconds as the time measurement unit
--- @param startBeat float|nil The start beat number (can be ``nil`` if you want to fetch *all* note data)
--- @param endBeat float|nil The end beat number (can be ``nil`` if you want to fetch *all* note data)
---
--- @return table[]
function Song:GetNoteData(steps, useSeconds, startBeat, endBeat) end
--- Returns a list of spell cards for the song
---
--- See :ref:`spell_card_format`
---
--- |since_notitg_v3|
---
--- @return table[]
function Song:GetSpellCards() end
--- Sets the number of spell cards for a song
---
--- |since_notitg_v3|
---
--- @param count int The number of spell cards
---
--- @return void
function Song:SetNumSpellCards(count) end
--- Sets a spell card's start and end point
---
--- |since_notitg_v3|
---
--- @param index int The spell card index (0 indexed)
--- @param startBeat float The beat to start the spell card
--- @param endBeat float The beat to end the spell card
---
--- @return void
function Song:SetSpellCardTiming(index, startBeat, endBeat) end
--- Sets a spell card's name
---
--- |since_notitg_v3|
---
--- @param index int The spell card index (0 indexed)
--- @param name string The new spell card name
---
--- @return void
function Song:SetSpellCardName(index, name) end
--- Sets a spell card's difficulty rating
---
--- |since_notitg_v3|
---
--- @param index int The spell card index (0 indexed)
--- @param difficulty int The difficulty rating to set
---
--- @return void
function Song:SetSpellCardDifficulty(index, difficulty) end
--- Sets the color of a spell card
---
--- |since_notitg_v3|
---
--- @param index int The spell card index (0 indexed)
--- @param r float The red value (0 - 1)
--- @param g float The green value (0 - 1)
--- @param b float The blue value (0 - 1)
--- @param a float The alpha value (0 - 1)
---
--- @return void
function Song:SetSpellCardColor(index, r, g, b, a) end
--- Returns the directory where the song is stored
---
--- |since_itg|
---
--- @return string
function Song:GetSongDir() end
--- Returns the path to the song's audio file
---
--- |since_notitg_v4|
---
--- @return string
function Song:GetMusicPath() end
--- Returns the length of the music in seconds
---
--- |since_itg|
---
--- @return float
function Song:MusicLengthSeconds() end
--- Returns the length of the steps in seconds
---
--- |since_notitg_v3|
---
--- @return float
function Song:StepsLengthSeconds() end
--- Returns true if the song will cost 2 credits
---
--- |since_itg|
---
--- @return boolean
function Song:IsLong() end
--- Returns true if the song will cost 3 credits
---
--- |since_itg|
---
--- @return boolean
function Song:IsMarathon() end
--- Adds a label to the song
---
--- |since_notitg_v3|
---
--- @param beat float The beat of the label
--- @param name string The name of the label
---
--- @return void
function Song:AddLabel(beat, name) end
--- Returns a list of song labels
---
--- |since_notitg_v3|
---
--- @return table
function Song:GetLabels() end
--- Removes all labels from the song
---
--- |since_notitg_v3|
---
--- @return void
function Song:ClearLabels() end
--- Returns the path to the Lua unlock file
---
--- Returns an empty string if the steps do not exist, or if there is no unlock file
---
--- |since_notitg_v4|
---
--- @param difficulty int The step difficulty (see :cpp:enum:`Difficulty`)
---
--- @return string
function Song:GetUnlockMethod(difficulty) end
--- Returns the name of the group (folder) the song is in
---
--- |since_itg|
---
--- @return string
function Song:GetGroupName() end
--- Returns BPM changes and stop data
---
--- Returns 2 lists of tables - the first one has the format ``{ beat, newBpm }``, the second one has the format ``{ beat, stopDuration }``
---
--- ``local beat_data, stop_data = song:GetTimingData()``
---
--- |since_notitg_v4_0_1|
---
--- @return multiple
function Song:GetTimingData() end
--- Returns the song's genre
---
--- |since_itg|
---
--- @return string
function Song:GetGenre() end
--- Returns the start point of the music preview in seconds
---
--- |since_notitg_v4|
---
--- @return float
function Song:GetSampleStartSeconds() end
--- Returns the length of the music preview in seconds
---
--- |since_notitg_v4|
---
--- @return float
function Song:GetSampleLengthSeconds() end
--- Converts a beat number to a seconds number
---
--- |since_notitg_v3|
---
--- @param beat float The beat to get a seconds number for
---
--- @return float
function Song:GetElapsedTimeFromBeat(beat) end
--- Converts a seconds number to a beat number
---
--- |since_notitg_v3|
---
--- @param seconds float The second to get a beat number for
---
--- @return float
function Song:GetBeatFromElapsedTime(seconds) end
--- Returns a list of steps matching ``stepsType``
---
--- |since_itg|
---
--- @param stepsType int The steps type - see :cpp:enum:`StepsType`
---
--- @return Steps[]
function Song:GetStepsByStepsType(stepsType) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function Song:__eq() end
--- Returns a ``Song (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Song:__tostring() end
return Song

69
.typings/SongManager.lua Normal file
View File

@ -0,0 +1,69 @@
--- @class SongManager
--- @field public __index table Gives you the ``SongManager`` table again
local SongManager = {}
--- Returns a list of all songs installed
---
--- |since_itg|
---
--- @return Song[]
function SongManager:GetAllSongs() end
--- Returns a list of all courses installed
---
--- |since_itg|
---
--- @param includeAutogen boolean Whether to include auto-generated courses
---
--- @return Course[]
function SongManager:GetAllCourses(includeAutogen) end
--- Returns the song matching ``name``, or ``nil`` if no songs match
---
--- |since_itg|
---
--- @param name string The song name to locate
---
--- @return Song|nil
function SongManager:FindSong(name) end
--- Returns the course matching ``name``, or ``nil`` if no courses match
---
--- |since_itg|
---
--- @param name string The course name to locate
---
--- @return Song|nil
function SongManager:FindCourse(name) end
--- Returns a random song
---
--- |since_itg|
---
--- @return Song
function SongManager:GetRandomSong() end
--- Returns a random course
---
--- |since_itg|
---
--- @return Course
function SongManager:GetRandomCourse() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function SongManager:__eq(other) end
--- Returns a ``SongManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function SongManager:__tostring() end
return SongManager

168
.typings/Sprite.lua Normal file
View File

@ -0,0 +1,168 @@
--- @class Sprite: Actor
--- @field public __index table Gives you the ``Sprite`` table again
local Sprite = {}
--- Sets the sprite's texture
---
--- |since_notitg_v1|
---
--- @param texture RageTexture The new texture to set
---
--- @return void
function Sprite:SetTexture(texture) end
--- Returns the sprite's texture
---
--- |since_notitg_v1|
---
--- @return RageTexture
function Sprite:GetTexture() end
--- Sets the texture to the one at ``path``, or unsets if ``path`` is ``nil``
---
--- |since_itg|
---
--- @param path string|nil The texture path to load, or ``nil`` to unload
---
--- @return void
function Sprite:Load() end
--- Like :lua:meth:`Sprite.Load`, but for song banners
---
--- |since_itg|
---
--- @param path string The texture path to load
---
--- @return void
function Sprite:LoadBanner(path) end
--[[
--- Load a song banner texture
---
--- **Added by Simply Love theme**
---
--- @param song Song The song to load the banner from
---
--- @return void
function Sprite:LoadFromSongBanner() end
--- Load a song background texture
---
--- **Added by Simply Love theme**
---
--- @param song Song The song to load the background from
---
--- @return void
function Sprite:LoadFromSongBackground() end
]]
--- Like :lua:meth:`Sprite.Load`, but for song backgrounds
---
--- |since_itg|
---
--- @param path string The texture path to load
---
--- @return void
function Sprite:LoadBackground(path) end
--- Sets whether an animated texture should loop
---
--- This is an alias for :lua:meth:`RageTexture.loop`
---
--- |since_itg|
---
--- @param enable boolean ``true`` to loop the animation, ``false`` to have a play-once animation
---
--- @return void
function Sprite:loop(enable) end
--- Sets the animated texture's loop point
---
--- This can be used to make multiple-state animations using a single spritesheet - such as having a run cycle set the loop point when starting/stopping a run.
---
--- |since_notitg_v4|
---
--- @param point int The new loop point to set
---
--- @return void
function Sprite:looppoint() end
--- Returns the current frame of an animated texture
---
--- |since_notitg_v4|
---
--- @return int
function Sprite:getstate() end
--- Sets the playback rate of an animated texture
---
--- This is an alias for :lua:meth:`RageTexture.rate`
---
--- |since_itg|
---
--- @param rate float The new playback rate to set (0 - 1)
---
--- @return void
function Sprite:rate(rate) end
--- Scales the image to fit a rectangle
---
--- |since_itg|
---
--- @param left float The left coordinate of the rectangle
--- @param top float The left coordinate of the rectangle
--- @param right float The right coordinate of the rectangle
--- @param bottom float The bottom coordinate of the rectangle
---
--- @return void
function Sprite:customtexturerect(left, top, right, bottom) end
--- Scales the sprite to the specified dimensions
---
--- |since_itg|
---
--- @param width float The target width
--- @param height float The height width
---
--- @return void
function Sprite:scaletoclipped(width, height) end
--- Sets custom coordinates to the frames of the texture
---
--- |since_itg|
---
--- @param x float The X translation to apply
--- @param y float The Y translation to apply
---
--- @return void
function Sprite:stretchtexcoords() end
--- Sets the texture scroll speed
---
--- A velocity of ``1`` means the texture will scroll entirely once per second - ``2`` makes it scroll twice per second, etc.
---
--- |since_itg|
---
--- @param x float The X scroll speed to apply
--- @param y float The Y scroll speed to apply
---
--- @return void
function Sprite:texcoordvelocity() end
--- Returns the number of states the sprite has
---
--- |since_notitg_v4_2_0|
---
--- @return int
function Sprite:GetNumStates() end
--- Returns an ``Sprite (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Sprite:__tostring() end
return Sprite

58
.typings/StageStats.lua Normal file
View File

@ -0,0 +1,58 @@
--- @class StageStats
--- @field public __index table Gives you the ``StageStats`` table again
local StageStats = {}
--- Returns the number of seconds played
---
--- |since_itg|
---
--- @return float
function StageStats:GetGameplaySeconds() end
--- Returns the :lua:class:`PlayerStageStats` instance for a player
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return PlayerStageStats
function StageStats:GetPlayerStageStats(playerNumber) end
--- Returns a list of played songs
---
--- |since_notitg_v3|
---
--- @return Song[]
function StageStats:GetPlayedSongs() end
--- Returns a list of possible songs
---
--- |since_notitg_v3|
---
--- @return Song[]
function StageStats:GetPossibleSongs() end
--- Returns the total possible steps seconds
---
--- |since_notitg_v3|
---
--- @return number
function StageStats:GetTotalPossibleStepsSeconds() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function StageStats:__eq(other) end
--- Returns a ``StageStats (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function StageStats:__tostring() end
return StageStats

87
.typings/StatsManager.lua Normal file
View File

@ -0,0 +1,87 @@
--- @class StatsManager
--- @field public __index table Gives you the ``StatsManager`` table again
local StatsManager = {}
--- Returns a :lua:class:`StageStats` instance including every game played
---
--- |since_itg|
---
--- @return StageStats
function StatsManager:GetAccumStageStats() end
--- Returns a :lua:class:`StageStats` instance containing the last ``rounds`` rounds played
---
--- |since_itg|
---
--- @param rounds int The number of rounds to fetch
---
--- @return StageStats|void
function StatsManager:GetPlayedStageStats(rounds) end
--- Returns the current stage stats
---
--- |since_itg|
---
--- @return StageStats
function StatsManager:GetCurStageStats() end
--- Returns the number of stages played
---
--- |since_itg|
---
--- @return int
function StatsManager:GetStagesPlayed() end
--- Returns the final grade for the specified player
---
--- See :cpp:enum:`Grade`
---
--- |since_itg|
---
--- @param playerNumber int The player number (0 indexed)
---
--- @return int
function StatsManager:GetFinalGrade(playerNumbe) end
--- Returns the worst grade
---
--- See :cpp:enum:`Grade`
---
--- |since_itg|
---
--- @return int
function StatsManager:GetWorstGrade() end
--- Returns the best grade
---
--- See :cpp:enum:`Grade`
---
--- |since_itg|
---
--- @return int
function StatsManager:GetBestGrade() end
--- Resets stored stats
---
--- |since_itg|
---
--- @return void
function StatsManager:Reset() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function StatsManager:__eq(other) end
--- Returns a ``StatsManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function StatsManager:__tostring() end
return StatsManager

60
.typings/Steps.lua Normal file
View File

@ -0,0 +1,60 @@
--- @class Steps
--- @field public __index table Gives you the ``Steps`` table again
local Steps = {}
--- Returns the steps description
---
--- |since_itg|
---
--- @return string
function Steps:GetDescription() end
--- Returns the numeric difficulty rating for the steps
---
--- |since_itg|
---
--- @return int
function Steps:GetMeter() end
--- Returns the steps' difficulty
---
--- See :cpp:enum:`Difficulty`
---
--- |since_itg|
---
--- @return int
function Steps:GetDifficulty() end
--- Return the steps' radar values
---
--- |since_itg|
---
--- @return RadarValues
function Steps:GetRadarValues() end
--- Returns the steps type
---
--- See :cpp:enum:`StepsType`
---
--- |since_itg|
---
--- @return int
function Steps:GetStepsType() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function Steps:__eq() end
--- Returns a ``Steps (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Steps:__tostring() end
return Steps

69
.typings/ThemeManager.lua Normal file
View File

@ -0,0 +1,69 @@
--- @class ThemeManager
--- @field public __index table Gives you the ``ThemeManager`` table again
local ThemeManager = {}
--- Returns a list of all installed theme names
---
--- |since_itg|
---
--- @return string[]
function ThemeManager:GetThemeNames() end
--- Returns the name of the currently used theme
---
--- |since_itg|
---
--- @return string
function ThemeManager:GetCurThemeName() end
--- Returns the current language
---
--- Eg: ``english``
---
--- |since_itg|
---
--- @return string
function ThemeManager:GetCurLanguage() end
--- Returns the value of a theme metric
---
--- Returns an empty string in the metric doesn't exist
---
--- |since_itg|
---
--- @param class string The class to fetch a metric within
--- @param element string The name of the metric within the class
---
--- @return string
function ThemeManager:GetMetric() end
--- Returns the path of an element in a specific folder, determined bu ``type``
---
--- Returns the ``_missing`` path if the element does not exist
---
--- |since_itg|
---
--- @param type int The type of the wanted element - see :cpp:enum:`ElementCategory`
--- @param class string The class to use
--- @param element string The element to find within the class
---
--- @return string
function ThemeManager:GetPath(type, class, element) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function ThemeManager:__eq(other) end
--- Returns a ``ThemeManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function ThemeManager:__tostring() end
return ThemeManager

53
.typings/Trail.lua Normal file
View File

@ -0,0 +1,53 @@
--- @class Trail
--- @field public __index table Gives you the ``Trail`` table again
local Trail = {}
--- Returns the total length of the trail in seconds
---
--- |since_itg|
---
--- @return float
function Trail:GetLengthSeconds() end
--- Returns the difficulty
---
--- See :cpp:enum:`Difficulty`
---
--- |since_itg|
---
--- @return int
function Trail:GetDifficulty() end
--- Returns the radar values for the trail
---
--- |since_itg|
---
--- @return RadarValues
function Trail:GetRadarValues() end
--- Returns the steps type for a trail
---
--- See :cpp:enum:`StepsType`
---
--- |since_notitg_v4_2_0|
---
--- @return int
function Trail:GetStepsType() end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function Steps:__eq() end
--- Returns a ``Trail (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function Steps:__tostring() end
return Trail

View File

@ -0,0 +1,70 @@
--- @class UnlockManager
--- @field public __index table Gives you the ``UnlockManager`` table again
local UnlockManager = {}
--- Unlocks an entry with a code
---
--- |since_itg|
---
--- @param unlockCode int The unlock code
---
--- @return void
function UnlockManager:UnlockCode(unlockCode) end
--- Sets the preferred song/course to the specified code
---
--- |since_itg|
---
--- @param unlockCode int The unlock code
---
--- @return void
function UnlockManager:PreferUnlockCode(unlockCode) end
--- Returns a table of steps unlocked by ``unlockCode``
---
--- Returns an empty table on an invalid code
---
--- |since_itg|
---
--- @param unlockCode int The unlock code
---
--- @return table
function UnlockManager:GetSongsUnlockedByCode() end
--- Returns a table of songs unlocked by ``unlockCode``
---
--- Returns an empty table on an invalid code
---
--- |since_itg|
---
--- @param unlockCode int The unlock code
---
--- @return table
function UnlockManager:GetStepsUnlockedByCode() end
--- Finds the code associated with ``name``
---
--- |since_itg|
---
--- @param name string The name
---
--- @return int|nil
function UnlockManager:FindCode(name) end
--- Tests for equality against another userdata object
---
--- |since_unk|
---
--- @param other userdata The object to test for equality against
---
--- @return boolean
function UnlockManager:__eq(other) end
--- Returns a ``UnlockManager (MemoryAddress)`` string
---
--- |since_unk|
---
--- @return string
function UnlockManager:__tostring() end
return UnlockManager

810
.typings/global.lua Normal file
View File

@ -0,0 +1,810 @@
--- @module global
local global = {}
--- The :lua:class:`RageFileManager` singleton
---
--- |since_notitg_v3|
---
--- @export
--- @type RageFileManager
global.FILEMAN = {}
--- The :lua:class:`GameState` singleton
---
--- |since_itg|
---
--- @export
--- @type GameState
global.GAMESTATE = {}
--- The :lua:class:`GameSoundManager` singleton
---
--- |since_itg|
---
--- @export
--- @type GameSoundManager
global.SOUND = {}
--- The :lua:class:`MemoryCardManager` singleton
---
--- Doesn't seem to exist when testing in |notitg_v4|?
---
--- |since_itg|
---
--- @export
--- @type MemoryCardManager
global.MEMCARDMAN = {}
--- The :lua:class:`MessageManager` singleton
---
--- |since_itg|
---
--- @export
--- @type MessageManager
global.MESSAGEMAN = {}
--- The :lua:class:`NoteSkinManager` singleton
---
--- |since_itg|
---
--- @export
--- @type NoteSkinManager
global.NOTESKIN = {}
--- The :lua:class:`PrefsManager` singleton
---
--- |since_itg|
---
--- @export
--- @type PrefsManager
global.PREFSMAN = {}
--- The :lua:class:`ProfileManager` singleton
---
--- |since_itg|
---
--- @export
--- @type ProfileManager
global.PROFILEMAN = {}
--- The :lua:class:`RageDisplay` singleton
---
--- |since_notitg_v1|
---
--- @export
--- @type RageDisplay
global.DISPLAY = {}
--- The :lua:class:`RageInput` singleton
---
--- |since_itg|
---
--- @export
--- @type RageInput
global.INPUTMAN = {}
--- The :lua:class:`ScreenManager` singleton
---
--- |since_itg|
---
--- @export
--- @type ScreenManager
global.SCREENMAN = {}
--- The :lua:class:`SongManager` singleton
---
--- |since_itg|
---
--- @export
--- @type SongManager
global.SONGMAN = {}
--- The :lua:class:`StatsManager` singleton
---
--- |since_itg|
---
--- @export
--- @type StatsManager
global.STATSMAN = {}
--- The :lua:class:`ThemeManager` singleton
---
--- |since_itg|
---
--- @export
--- @type ThemeManager
global.THEME = {}
--- The :lua:class:`UnlockManager` singleton
---
--- |since_itg|
---
--- @export
--- @type UnlockManager
global.UNLOCKMAN = {}
--- The window width, scaled
---
--- This is set by the theme - typically ``640`` with a 4:3 aspect ratio
---
--- If you want the width of the game window, see :lua:meth:`RageDisplay.GetWindowWidth`.
---
--- |since_itg|
---
--- @export
--- @type float
global.SCREEN_WIDTH = 0
--- The window height, scaled
---
--- This is set by the theme - typically ``480``
---
--- If you want the height of the game window, see :lua:meth:`RageDisplay.GetWindowHeight`.
---
--- |since_itg|
---
--- @export
--- @type float
global.SCREEN_HEIGHT = 0
--- The leftmost coordinate of the window - always zero
---
--- |since_itg|
---
--- @export
--- @constant
--- @type float
global.SCREEN_LEFT = 0
--- The rightmost coordinate of the window - equal to :lua:attr:`global.SCREEN_WIDTH`
---
--- |since_itg|
---
--- @export
--- @type float
global.SCREEN_RIGHT = 0
--- The topmost coordinate of the window - always zero
---
--- |since_itg|
---
--- @export
--- @constant
--- @type float
global.SCREEN_TOP = 0
--- The bottommost coordinate of the window - equal to :lua:attr:`global.SCREEN_HEIGHT`
---
--- |since_itg|
---
--- @export
--- @type float
global.SCREEN_BOTTOM = 0
--- The middle X coordinate of the window
---
--- Equal to ``SCREEN_WIDTH / 2``
---
--- |since_itg|
---
--- @export
--- @type float
global.SCREEN_CENTER_X = 0
--- The middle Y coordinate of the window
---
--- Equal to ``SCREEN_HEIGHT / 2``
---
--- |since_itg|
---
--- @export
--- @type float
global.SCREEN_CENTER_Y = 0
--- The monitor width
---
--- |since_itg|
---
--- @export
--- @type float
global.DISPLAY_WIDTH = 0
--- The monitor height
---
--- |since_itg|
---
--- @export
--- @type float
global.DISPLAY_HEIGHT = 0
--- The leftmost coordinate of the monitor - always zero
---
--- |since_itg|
---
--- @export
--- @constant
--- @type float
global.DISPLAY_LEFT = 0
--- The rightmost coordinate of the monitor - equal to :lua:attr:`global.DISPLAY_WIDTH`
---
--- |since_itg|
---
--- @export
--- @type float
global.DISPLAY_RIGHT = 0
--- The topmost coordinate of the monitor - always zero
---
--- |since_itg|
---
--- @export
--- @constant
--- @type float
global.DISPLAY_TOP = 0
--- The bottommost coordinate of the monitor - equal to :lua:attr:`global.DISPLAY_HEIGHT`
---
--- |since_itg|
---
--- @export
--- @type float
global.DISPLAY_BOTTOM = 0
--- The middle X coordinate of the monitor
---
--- Equal to ``DISPLAY_WIDTH / 2``
---
--- |since_itg|
---
--- @export
--- @type float
global.DISPLAY_CENTER_X = 0
--- The middle Y coordinate of the monitor
---
--- Equal to ``DISPLAY_HEIGHT / 2``
---
--- |since_itg|
---
--- @export
--- @type float
global.DISPLAY_CENTER_Y = 0
--- Equal to ``0``
---
--- |since_itg|
---
--- @export
--- @type int
global.PLAYER_1 = 0
--- Equal to ``1``
---
--- |since_itg|
---
--- @export
--- @type int
global.PLAYER_2 = 1
--- Equal to ``true``
---
--- |since_itg|
---
--- @export
--- @type boolean
global.OPENITG = true
--- The current OpenITG version
---
--- |since_itg|
---
--- @export
--- @type int
global.OPENITG_VERSION = 0
--- Equal to ``true``
---
--- |since_notitg_v1|
---
--- @export
--- @type boolean
global.FUCK_EXE = true
--- Equal to ``20161226`` (The release date of |notitg_v1|)
---
--- |since_notitg_v3| (yes really)
---
--- @export
--- @type int
global.FUCK_VERSION_1 = 20161226
--- Equal to ``20170405`` (The release date of |notitg_v2|)
---
--- |since_notitg_v3| (yes really)
---
--- @export
--- @type int
global.FUCK_VERSION_2 = 20170405
--- Equal to ``20180609`` (The release date of |notitg_v3|)
---
--- |since_notitg_v4| (yes really)
---
--- @export
--- @type int
global.FUCK_VERSION_3 = 20180609
--- Equal to ``20180826`` (The release date of |notitg_v3_1|)
---
--- |since_notitg_v4| (yes really)
---
--- @export
--- @type int
global.FUCK_VERSION_3_1 = 20180826
--- Returns whether all active players failed the current stage
---
--- |since_itg|
---
--- @return boolean
function global.AllFailed() end
--- Attempts to connect to a server
---
--- Returns a boolean depending on whether connection succeeded or not... apparently... even though trying to connect to
--- a non-existent server returns ``true`` before a system message appears saying connection failed.
---
--- |since_itg|
---
--- @return boolean
function global.ConnectToServer() end
--- Returns whether the game is connected to a server or not
---
--- |since_itg|
---
--- @return boolean
function global.IsNetConnected() end
--- Returns whether the game is connected to StepMania Online or not
---
--- |since_itg|
---
--- @return boolean
function global.IsNetSMOnline() end
--- Returns whether the specified player is logged in to StepMania Online
---
--- |since_itg|
---
--- @param player int The player number (0 indexed)
---
--- @return boolean
function global.IsSMOnlineLoggedIn(player) end
--- Sends the current style to the StepMania Online server
---
--- |since_itg|
---
--- @return boolean
function global.ReportStyle() end
--- Converts a difficulty to a human-readable string
---
--- |since_itg|
---
--- @param difficulty int The difficulty - see :cpp:enum:`Difficulty`
---
--- @return string
function global.DifficultyToThemedString(difficulty) end
--- Converts a course difficulty to a human-readable string
---
--- |since_itg|
---
--- @param courseDifficulty int The course difficulty - see :cpp:enum:`CourseDifficulty`
---
--- @return string
function global.CourseDifficultyToThemedString(courseDifficulty) end
--- Returns the index of the current song in the course (0 indexed)
---
--- |since_itg|
---
--- @return int
function global.CourseSongIndex() end
--- Returns the name of the current style
---
--- Eg: ``versus``
---
--- |since_itg|
---
--- @return string
function global.CurStyleName() end
--- Returns the current day of the month (1 indexed)
---
--- |since_itg|
---
--- @return int
function global.DayOfMonth() end
--- Returns the current month of the year (1 indexed)
---
--- |since_itg|
---
--- @return int
function global.MonthOfMonth() end
--- Returns the current day of the year (0 indexed)
---
--- |since_itg|
---
--- @return int
function global.DayOfYear() end
--- Returns the current weekday (0 - 6)
---
--- This assumes the week starts on a Sunday
---
--- |since_itg|
---
--- @return int
function global.Weekday() end
--- Returns the current year
---
--- |since_itg|
---
--- @return int
function global.Year() end
--- Returns the current hour
---
--- |since_itg|
---
--- @return int
function global.Hour() end
--- Returns the current minute
---
--- |since_itg|
---
--- @return int
function global.Minute() end
--- Returns the current second
---
--- |since_itg|
---
--- @return int
function global.Second() end
--- Converts a month number to a human-readable string
---
--- Returns an empty string for an invalid month
---
--- Eg: ``1`` -> ``January``
---
--- |since_itg|
---
--- @return string
function global.MonthToString() end
--- Returns a human-readable string in the format ``MM:SS`` for a given number of seconds
---
--- |since_itg|
---
--- @param seconds int The number of seconds
---
--- @return string
function global.SecondsToMMSS(seconds) end
--- Returns a human-readable string in the format ``MM:SS.MsMs`` for a given number of seconds
---
--- |since_itg|
---
--- @param seconds float The number of seconds
---
--- @return string
function global.SecondsToMMSSMsMs(seconds) end
--- Returns a human-readable string in the format ``MM:SS.MsMsMs`` for a given number of seconds
---
--- |since_itg|
---
--- @param seconds float The number of seconds
---
--- @return string
function global.SecondsToMMSSMsMsMs(seconds) end
--- Returns a human-readable string in the format ``M:SS.MsMs`` for a given number of seconds
---
--- |since_itg|
---
--- @param seconds float The number of seconds
---
--- @return string
function global.SecondsToMSSMsMs(seconds) end
--- Logs a message
---
--- Like :lua:func:`global.global.Trace`, but shows even if the ``ShowLogOutput`` preference is disabled
---
--- Also returns ``true`` for whatever reason
---
--- |since_itg|
---
--- @param message string The message to log
---
--- @return boolean
function global.Debug(message) end
--- Logs a message to the console log
---
--- Also returns ``true`` for whatever reason
---
--- |since_itg|
---
--- @param message string The message to log
---
--- @return boolean
function global.Trace(message) end
--- Formats a dance points score into a human-readable percentage score string
---
--- |since_itg|
---
--- @param score float The dance points score
---
--- @return string
function global.FormatPercentScore(score) end
--- Returns the best final grade
---
--- |since_itg|
---
--- See :cpp:enum:`Grade`
---
--- @return int
function global.GetBestFinalGrade() end
--- Returns the amount of free space available on the partition the game is installed on
---
--- Eg: ``12.51 GB``
---
--- |since_itg|
---
--- @return string
function global.GetDiskSpaceFree() end
--- Returns the capacity of the partition the game is installed on
---
--- Eg: ``786.44 GB``
---
--- |since_itg|
---
--- @return string
function global.GetDiskSpaceTotal() end
--- Returns the easiest difficulty chosen from the current song
---
--- See :cpp:enum:`Difficulty`
---
--- |since_itg|
---
--- @return int
function global.GetEasiestNotesDifficulty() end
--- Returns the grade for a given percentage score
---
--- See :cpp:enum:`Grade`
---
--- |since_itg|
---
--- @param percent float The percentage score
---
--- @return int
function global.GetGradeFromPercent(percent) end
--- Returns the internal IP and netmask of the machine
---
--- Eg: ``192.168.1.10, Netmask: 255.255.255.0`` - as tested on |notitg_v4_0_1| though, this function seems to return ``Not implemented``.
---
--- |since_itg|
---
--- @return string
function global.GetIP() end
--- Returns the input type
---
--- |since_itg|
---
--- @return string
function global.GetInputType() end
--- Returns the number of crash logs stored
---
--- |since_itg|
---
--- @return int
function global.GetNumCrashLogs() end
--- Returns the number drive IO errors
---
--- |since_itg|
---
--- @return int
function global.GetNumIOErrors() end
--- Returns the number of edits registered in the machine
---
--- |since_itg|
---
--- @return int
function global.GetNumMachineEdits() end
--- Returns the number of scored saved on the machine
---
--- |since_itg|
---
--- @return int
function global.GetNumMachineScores() end
--- Returns the number of players enabled
---
--- This is an alias for :lua:meth:`GameState.GetNumPlayersEnabled`
---
--- |since_itg|
---
--- @return int
function global.GetNumMachineScores() end
--- Returns the name (and version if applicable) of the executable
---
--- Eg: ``NotITG v4.0.1``
---
--- |since_itg|
---
--- @return string
function global.GetProductName() end
--- Returns the version of the executable
---
--- Eg: ``v4.0.1``
---
--- |since_itg|
---
--- @return string
function global.GetProductVer() end
--- Returns the revision number of the executable
---
--- |since_itg|
---
--- @return int
function global.GetRevision() end
--- Returns the serial number of the installation
---
--- |since_itg|
---
--- @return string
function global.GetSerialNumber() end
--- Returns the text of the current stage
---
--- Eg: ``event``
---
--- |since_itg|
---
--- @return string
function global.GetStageText() end
--- Returns the length the game has been running for
---
--- Returns a ``HH:MM:SS`` string
---
--- |since_itg|
---
--- @return string
function global.GetUptime() end
--- Returns a grade's name
---
--- See :cpp:enum:`Grade`
---
--- Eg: ``A`` -> ``3``, ``Tier04`` -> ``3``
---
--- |since_itg|
---
--- @param name string The grade name
---
--- @return int
function global.Grade(name) end
--- Returns a grade name from a grade
---
--- See :cpp:enum:`Grade`
---
--- Unfortunately, it's not a very useful string. For example, ``GradeToString(GRADE_TIER03)`` returns... ``Tier03``.
---
--- |since_itg|
---
--- @param grade int The grade
---
--- @return string
function global.GradeToString(grade) end
--- Returns whether the ITG hub is connected
---
--- |since_itg|
---
--- @return boolean
function global.HubIsConnected() end
--- Returns whether a given player has a memory card connected
---
--- |since_itg|
---
--- @param player int The player number (0 indexed)
---
--- @return boolean
function global.IsUsingMemoryCard(player) end
--- Returns whether any player has a memory card connected
---
--- |since_itg|
---
--- @return boolean
function global.IsAnyPlayerUsingMemoryCard() end
--- Returns the number of stages remaining
---
--- Returns ``999`` if event mode is enabled
---
--- |since_itg|
---
--- @return int
function global.NumStagesLeft() end
--- Returns whether the current stage is the extra stage
---
--- |since_itg|
---
--- @return boolean
function global.IsExtraStage() end
--- Returns whether the current stage is the second extra stage
---
--- |since_itg|
---
--- @return boolean
function global.IsExtraStage2() end
--- Returns whether the current stage is the final stage
---
--- |since_itg|
---
--- @return boolean
function global.IsFinalStage() end
--- Returns whether at least one player passed the current song
---
--- |since_itg|
---
--- @return boolean
function global.OnePassed() end
--- Returns the name of the current play mode
---
--- Eg: ``Regular``
---
--- |since_itg|
---
--- @return string
function global.PlayModeName() end
return global

2011
Song.sm.auto Normal file

File diff suppressed because it is too large Load Diff

View File

@ -94,7 +94,10 @@ end
--- This is the jump function for the generator. It is equivalent
--- to 2^64 calls to next(); it can be used to generate 2^64
--- non-overlapping subsequences for parallel computations.
<<<<<<< HEAD
---@return void
=======
>>>>>>> 53b229e (init commit, 2!)
function rng:jump()
return jump(self.state)
end