Merge pull request 'mcl_ver_info' (#3043) from mcl_ver_info into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/3043 Reviewed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
This commit is contained in:
commit
2d05f9bc89
|
@ -1,3 +1,4 @@
|
|||
title = MineClone 2
|
||||
description = A survival sandbox game. Survive, gather, hunt, build, explore, and do much more.
|
||||
disallowed_mapgens = v6
|
||||
version=MCL2-0.82-indev
|
65
mods/HUD/mcl_ver_info/init.lua
Normal file
65
mods/HUD/mcl_ver_info/init.lua
Normal file
|
@ -0,0 +1,65 @@
|
|||
---
|
||||
--- Generated by EmmyLua
|
||||
--- Created by Michieal.
|
||||
--- DateTime: 11/28/22 4:38 PM
|
||||
---
|
||||
local modname = minetest.get_current_modname()
|
||||
local S = minetest.get_translator(modname)
|
||||
|
||||
local function xpcall_ver (error)
|
||||
minetest.log("info", "mcl_ver_info:: Gamepath not supported in this version of Minetest.")
|
||||
end
|
||||
|
||||
local function get_game_info ()
|
||||
local game_info
|
||||
|
||||
if xpcall(minetest.get_game_info, xpcall_ver) then
|
||||
game_info = minetest.get_game_info()
|
||||
else
|
||||
minetest.log( S("Sorry, but your version of Minetest doesn't support the latest API. Please upgrade your minetest."))
|
||||
return false
|
||||
end
|
||||
|
||||
return game_info
|
||||
end
|
||||
|
||||
-- register normal user access to debug levels 1 and 0.
|
||||
minetest.register_chatcommand("ver", {
|
||||
description = S("Display Mineclone 2 game version."),
|
||||
func = function(name, params)
|
||||
--[[ get_game_info's table data:
|
||||
{
|
||||
id = string,
|
||||
title = string,
|
||||
author = string,
|
||||
-- The root directory of the game
|
||||
path = string,
|
||||
}
|
||||
--]]
|
||||
local game_info = get_game_info ()
|
||||
|
||||
if game_info == false then
|
||||
return true
|
||||
end
|
||||
|
||||
local conf = Settings(game_info.path .. "/game.conf")
|
||||
local version = conf:get("version")
|
||||
|
||||
if game_info.title == nil or game_info.title == "" then
|
||||
game_info.title = "Mineclone 2"
|
||||
end
|
||||
-- Notes: "game.conf doesn't support id currently, this is planned in the future" - rubenwardy from the github issue.
|
||||
-- TODO: Remove workaround after minetest.get_game_info().id is implemented.
|
||||
if version == nil or version == "" then -- workaround for id = not being implemented yet.
|
||||
if game_info.id == nil or game_info.id == "" then
|
||||
game_info.id = "<unknown version> Please upgrade your version to the newest version for the /ver command to work."
|
||||
end
|
||||
else
|
||||
game_info.id = version
|
||||
end
|
||||
|
||||
minetest.chat_send_player(name, string.format("Version: %s - %s", game_info.title, game_info.id))
|
||||
return true
|
||||
end
|
||||
})
|
||||
|
2
mods/HUD/mcl_ver_info/locale/template.txt
Normal file
2
mods/HUD/mcl_ver_info/locale/template.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
# textdomain: mcl_ver_info
|
||||
Sorry, but your version of Minetest doesn't support the latest API. Please upgrade your minetest.=
|
4
mods/HUD/mcl_ver_info/mod.conf
Normal file
4
mods/HUD/mcl_ver_info/mod.conf
Normal file
|
@ -0,0 +1,4 @@
|
|||
name = mcl_ver_info
|
||||
description = Prints game version information; /ver command.
|
||||
depends = mcl_init
|
||||
author = Michieal
|
Loading…
Reference in New Issue
Block a user