mirror of
https://git.minetest.land/VoxeLibre/VoxeLibre.git
synced 2024-11-26 04:21:07 +01:00
Add mcl_hunger API: Set and get hunger
This commit is contained in:
parent
341e8fadb2
commit
0288f9d0a9
2 changed files with 30 additions and 0 deletions
|
@ -3,6 +3,19 @@ This API information is WIP. The mod API is still pretty much unofficial;
|
||||||
this mod is mostly seen as standalone for now.
|
this mod is mostly seen as standalone for now.
|
||||||
This may change in the future development of MineClone 2. Hopefully.
|
This may change in the future development of MineClone 2. Hopefully.
|
||||||
|
|
||||||
|
## Hunger level
|
||||||
|
The hunger level of the player is a whole number between 0 and 20 inclusive.
|
||||||
|
0 is starving and 20 is full. The hunger level is represented in
|
||||||
|
the HUD by a statbar with 20 half-icons.
|
||||||
|
|
||||||
|
## Functions
|
||||||
|
### `mcl_hunger.get_hunger(player)`
|
||||||
|
Returns the current hunger level of `player` (ObjectRef).
|
||||||
|
|
||||||
|
### `mcl_hunger.set_hunger(player, hunger)`
|
||||||
|
Sets the hunger level of `player` (ObjectRef) to `hunger` immediately.
|
||||||
|
`hunger` ***must*** be between 0 and 20 inclusive.
|
||||||
|
|
||||||
## Groups
|
## Groups
|
||||||
Items in group `food=3` will make a drinking sound and no particles.
|
Items in group `food=3` will make a drinking sound and no particles.
|
||||||
Items in group `food` with any other rating will make an eating sound and particles,
|
Items in group `food` with any other rating will make an eating sound and particles,
|
||||||
|
|
|
@ -60,6 +60,23 @@ local function update_hud(player)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- API START --
|
||||||
|
mcl_hunger.get_hunger = function(player)
|
||||||
|
local name = player:get_player_name()
|
||||||
|
return mcl_hunger.hunger[name]
|
||||||
|
end
|
||||||
|
|
||||||
|
mcl_hunger.set_hunger = function(player, hunger)
|
||||||
|
local name = player:get_player_name()
|
||||||
|
mcl_hunger.hunger[name] = hunger
|
||||||
|
mcl_hunger.set_hunger_raw(player)
|
||||||
|
update_hud(player)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- END OF API --
|
||||||
|
|
||||||
|
-- For internal use only. Don't use the “raw” functions outside of mcl_hunger!
|
||||||
|
|
||||||
mcl_hunger.get_hunger_raw = function(player)
|
mcl_hunger.get_hunger_raw = function(player)
|
||||||
local inv = player:get_inventory()
|
local inv = player:get_inventory()
|
||||||
if not inv then return nil end
|
if not inv then return nil end
|
||||||
|
|
Loading…
Reference in a new issue