mirror of
https://github.com/Dadido3/noita-mapcap.git
synced 2024-11-22 21:17:33 +00:00
Add debug functions to Noita API wrapper
This commit is contained in:
parent
aa99e101b4
commit
3d25084536
78
files/libraries/noita-api/debug.lua
Normal file
78
files/libraries/noita-api/debug.lua
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
-- Copyright (c) 2022 David Vogel
|
||||||
|
--
|
||||||
|
-- This software is released under the MIT License.
|
||||||
|
-- https://opensource.org/licenses/MIT
|
||||||
|
|
||||||
|
-- Noita modding API, but a bit more beautiful.
|
||||||
|
-- Current modding API version: 7
|
||||||
|
|
||||||
|
-- State: Working but incomplete. If something is missing, add it by hand!
|
||||||
|
-- It would be optimal to generate this API wrapper automatically...
|
||||||
|
|
||||||
|
---@type Vec2
|
||||||
|
local Vec2 = dofile_once("mods/noita-mapcap/files/libraries/vec2.lua")
|
||||||
|
|
||||||
|
-------------
|
||||||
|
-- Classes --
|
||||||
|
-------------
|
||||||
|
|
||||||
|
---@class NoitaDebugAPI
|
||||||
|
local DebugAPI = {}
|
||||||
|
|
||||||
|
------------------------
|
||||||
|
-- Noita API wrappers --
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
---Returns the mouse cursor position in world coordinates.
|
||||||
|
---@return Vec2
|
||||||
|
function DebugAPI.GetMouseWorld()
|
||||||
|
return Vec2(DEBUG_GetMouseWorld())
|
||||||
|
end
|
||||||
|
|
||||||
|
---Draws a mark in the world at the given position.
|
||||||
|
---@param pos Vec2 -- In world coordinates.
|
||||||
|
---@param message string|nil -- Defaults to "".
|
||||||
|
---@param r number|nil -- Color's red amount in the range [0, 1]. Defaults to 1.
|
||||||
|
---@param g number|nil -- Color's green amount in the range [0, 1]. Defaults to 0.
|
||||||
|
---@param b number|nil -- Color's blue amount in the range [0, 1]. Defaults to 0.
|
||||||
|
function DebugAPI.Mark(pos, message, r, g, b)
|
||||||
|
message, r, g, b = message or "", r or 1, g or 0, b or 0
|
||||||
|
return DEBUG_MARK(pos.x, pos.y, message, r, g, b)
|
||||||
|
end
|
||||||
|
|
||||||
|
---Returns true if this is a beta version of the game.
|
||||||
|
---
|
||||||
|
---Can return nil it seems.
|
||||||
|
---@return boolean|nil
|
||||||
|
function DebugAPI.IsBetaBuild()
|
||||||
|
return GameIsBetaBuild()
|
||||||
|
end
|
||||||
|
|
||||||
|
---Returns true if this is the dev version of the game (`noita_dev.exe`).
|
||||||
|
---@return boolean
|
||||||
|
function DebugAPI.IsDevBuild()
|
||||||
|
return DebugGetIsDevBuild()
|
||||||
|
end
|
||||||
|
|
||||||
|
---Trailer mode disables drawing of most UI elements.
|
||||||
|
---Similar, if not exactly the same, to F12 in the dev build.
|
||||||
|
---
|
||||||
|
---No idea how to disable it, beside pressing F12 in dev build.
|
||||||
|
function DebugAPI.EnableTrailerMode()
|
||||||
|
return DebugEnableTrailerMode()
|
||||||
|
end
|
||||||
|
|
||||||
|
---
|
||||||
|
---@return boolean
|
||||||
|
function DebugAPI.IsTrailerModeEnabled()
|
||||||
|
return GameGetIsTrailerModeEnabled()
|
||||||
|
end
|
||||||
|
|
||||||
|
---
|
||||||
|
---@param pos Vec2 -- In world coordinates.
|
||||||
|
---@return string
|
||||||
|
function DebugAPI.BiomeMapGetFilename(pos)
|
||||||
|
return DebugBiomeMapGetFilename(pos)
|
||||||
|
end
|
||||||
|
|
||||||
|
return DebugAPI
|
Loading…
Reference in New Issue
Block a user