Im on Win10, have both hudbars and 3d_armor in depends in optional depends.
Code: Select all
depends = 3d_armor
optional_depends = hudbars, mobs, mobs_monster
description = adds part hearts
Even more intrestingly I can add mobs and mobs_monster to optional depends both enabled and Ill get mobs = true and mobs_monster = false the paths work fine.
Test code
Code: Select all
local test1 = minetest.global_exists("mobs")
local test2 = minetest.global_exists("mobs_monster")
local test3 = minetest.get_modpath("mobs")
local test4 = minetest.get_modpath("mobs_monster")
Code: Select all
2020-12-26 12:02:08: [Main]: mobs: true path:C:\Users\sirro\Minetest\minetest-5.3.0-win64 (2)\bin\..\mods\mobs_redo
2020-12-26 12:02:08: [Main]: mobs_monster: false path:C:\Users\sirro\Minetest\minetest-5.3.0-win64 (2)\bin\..\mods\mobs_monster
https://github.com/minetest/minetest/is ... bal_exists
I did check the api as well and found:
Code: Select all
minetest.global_exists(name)
Checks if a global variable has been set, without triggering a warning.
Code: Select all
for n in pairs(_G) do minetest.debug(n) end
Code: Select all
2020-12-26 12:18:01: [Main]: flowers
2020-12-26 12:18:01: [Main]: bones
2020-12-26 12:18:01: [Main]: assert
2020-12-26 12:18:01: [Main]: tostring
2020-12-26 12:18:01: [Main]: tonumber
2020-12-26 12:18:01: [Main]: io
2020-12-26 12:18:01: [Main]: rawget
2020-12-26 12:18:01: [Main]: PseudoRandom
2020-12-26 12:18:01: [Main]: dump2
2020-12-26 12:18:01: [Main]: PerlinNoise
2020-12-26 12:18:01: [Main]: ipairs
2020-12-26 12:18:01: [Main]: VoxelManip
2020-12-26 12:18:01: [Main]: SecureRandom
2020-12-26 12:18:01: [Main]: print
2020-12-26 12:18:01: [Main]: binoculars
2020-12-26 12:18:01: [Main]: pcall
2020-12-26 12:18:01: [Main]: fire
2020-12-26 12:18:01: [Main]: carts
2020-12-26 12:18:01: [Main]: rawset
2020-12-26 12:18:01: [Main]: WATER_VISC
2020-12-26 12:18:01: [Main]: vector
2020-12-26 12:18:01: [Main]: register_trapdoor
2020-12-26 12:18:01: [Main]: rawequal
2020-12-26 12:18:01: [Main]: _VERSION
2020-12-26 12:18:01: [Main]: next
2020-12-26 12:18:01: [Main]: os
2020-12-26 12:18:01: [Main]: load
2020-12-26 12:18:01: [Main]: string
2020-12-26 12:18:01: [Main]: type
2020-12-26 12:18:01: [Main]: VoxelArea
2020-12-26 12:18:01: [Main]: coroutine
2020-12-26 12:18:01: [Main]: core
2020-12-26 12:18:01: [Main]: Raycast
2020-12-26 12:18:01: [Main]: craftguide
2020-12-26 12:18:01: [Main]: Settings
2020-12-26 12:18:01: [Main]: hud
2020-12-26 12:18:01: [Main]: mobs -- <<Mobs here
2020-12-26 12:18:01: [Main]: farming
2020-12-26 12:18:01: [Main]: dye
2020-12-26 12:18:01: [Main]: xpcall
2020-12-26 12:18:01: [Main]: creative
2020-12-26 12:18:01: [Main]: xpanes
2020-12-26 12:18:01: [Main]: bucket
2020-12-26 12:18:01: [Main]: minetest
2020-12-26 12:18:01: [Main]: tnt
2020-12-26 12:18:01: [Main]: walls
2020-12-26 12:18:01: [Main]: doors
2020-12-26 12:18:01: [Main]: wieldview
2020-12-26 12:18:01: [Main]: debug
2020-12-26 12:18:01: [Main]: sethome
2020-12-26 12:18:01: [Main]: WATER_ALPHA
2020-12-26 12:18:01: [Main]: dungeon_loot
2020-12-26 12:18:01: [Main]: register_door
2020-12-26 12:18:01: [Main]: hb
2020-12-26 12:18:01: [Main]: setfenv
2020-12-26 12:18:01: [Main]: require
2020-12-26 12:18:01: [Main]: LIGHT_MAX
2020-12-26 12:18:01: [Main]: protector
2020-12-26 12:18:01: [Main]: stairs
2020-12-26 12:18:01: [Main]: DIR_DELIM
2020-12-26 12:18:01: [Main]: screwdriver
2020-12-26 12:18:01: [Main]: pairs
2020-12-26 12:18:01: [Main]: player_api
2020-12-26 12:18:01: [Main]: armor
2020-12-26 12:18:01: [Main]: PcgRandom
2020-12-26 12:18:01: [Main]: error
2020-12-26 12:18:01: [Main]: package
2020-12-26 12:18:01: [Main]: loadfile
2020-12-26 12:18:01: [Main]: dofile
2020-12-26 12:18:01: [Main]: AreaStore
2020-12-26 12:18:01: [Main]: setmetatable
2020-12-26 12:18:01: [Main]: dump
2020-12-26 12:18:01: [Main]: PerlinNoiseMap
2020-12-26 12:18:01: [Main]: give_initial_stuff
2020-12-26 12:18:01: [Main]: INIT
2020-12-26 12:18:01: [Main]: loadstring
2020-12-26 12:18:01: [Main]: collectgarbage
2020-12-26 12:18:01: [Main]: jit
2020-12-26 12:18:01: [Main]: table
2020-12-26 12:18:01: [Main]: math
2020-12-26 12:18:01: [Main]: LAVA_VISC
2020-12-26 12:18:01: [Main]: ItemStack
2020-12-26 12:18:01: [Main]: _G
2020-12-26 12:18:01: [Main]: select
2020-12-26 12:18:01: [Main]: getmetatable
2020-12-26 12:18:01: [Main]: unpack
2020-12-26 12:18:01: [Main]: getfenv
2020-12-26 12:18:01: [Main]: sfinv
2020-12-26 12:18:01: [Main]: default
Thanks again for the help.
Edit: Im asking as a number of mods use global_exists to confirm if a mod is enabled or not but this dosen't at the moment seem like a reliable way to me as the conditions around when a global variable gets set seem unclear to myself at the moment.