Change "day_night" mod to "ikea_time"

Also fixed the volume chatcommand
master
benrob0329 2019-07-11 00:40:08 -04:00
parent 4e55df7238
commit d18863a2c0
6 changed files with 21 additions and 19 deletions

View File

@ -1,10 +1,10 @@
day_night = {}
ikea.time = {}
day_night.day_color = "#ddd7d2"
day_night.night_color = "#303030"
ikea.time.day_color = "#ddd7d2"
ikea.time.night_color = "#303030"
-- Returns 1 for open hours and 0 for closed
function day_night.get_storetime()
function ikea.time.get_storetime()
local tod = minetest.get_timeofday()
local store_tod = 0
if tod >= (9/24) and tod <= (18/24) then
@ -14,18 +14,18 @@ function day_night.get_storetime()
end
-- Sets the skybox and global light level for player
function day_night.set_player_time(player)
player:override_day_night_ratio(day_night.get_storetime())
function ikea.time.set_player_time(player)
player:override_day_night_ratio(ikea.time.get_storetime())
if day_night.get_storetime() == 1 then
player:set_sky(day_night.day_color, "plain", {}, false)
if ikea.time.get_storetime() == 1 then
player:set_sky(ikea.time.day_color, "plain", {}, false)
else
player:set_sky(day_night.night_color, "plain", {}, false)
player:set_sky(ikea.time.night_color, "plain", {}, false)
end
end
minetest.register_on_joinplayer(function(player)
day_night.set_player_time(player)
ikea.time.set_player_time(player)
end)
@ -36,16 +36,16 @@ minetest.register_globalstep(function(dtime)
timer = timer + dtime
if timer >= 1 then
local store_tod = day_night.get_storetime()
local store_tod = ikea.time.get_storetime()
if store_tod ~= old_time then
for _,player in ipairs(minetest.get_connected_players()) do
day_night.set_player_time(player)
ikea.time.set_player_time(player)
-- Play a "power down" sound whenever it become night
if store_tod == 0 and old_time == 1 then
minetest.sound_play("day_night_power_down", {
name = "day_night_power_down",
minetest.sound_play({
name = "ikea_time_power_down",
gain = 1.0,
pitch = 1.0,
})

2
mods/ikea_time/mod.conf Normal file
View File

@ -0,0 +1,2 @@
name = ikea_time
depends = ikea

View File

@ -3,7 +3,7 @@ light = {}
-- Set node to the base light node if the name ends in "_off"
-- Otherwise set it to the name + "_off"
function light.toggle_light(pos, node, play_sound)
local store_tod = day_night.get_storetime()
local store_tod = ikea.time.get_storetime()
local is_off = false
if node.name:sub(-4) == "_off" then
is_off = true

View File

@ -18,7 +18,7 @@ end
function music.play()
-- Queue up another play() if it's night
local store_time = day_night.get_storetime()
local store_time = ikea.time.get_storetime()
if store_time == 0 then
minetest.after(30, music.play)
return
@ -54,7 +54,7 @@ end)
minetest.register_chatcommand("volume", {
description = "Set music volume.",
params = "<float >= 0>",
function(name, param)
func = function(name, param)
if tonumber(param) and tonumber(param) >= 0 and minetest.get_player_by_name(name) then
minetest.get_player_by_name(name):get_meta():set_float("music:gain", tonumber(param))
return true, "Music volume set to " .. param .. "."
@ -70,7 +70,7 @@ local old_time = 0
minetest.register_globalstep(function(dtime)
timer = timer + dtime
if timer >= 1 then
local store_time = day_night.get_storetime()
local store_time = ikea.time.get_storetime()
if store_time == 0 and old_time == 1 then
for _, player in ipairs(minetest.get_connected_players()) do
local handle = music.handles[player:get_player_name()]

View File

@ -1,2 +1,2 @@
name = music
depends = day_night
depends = ikea_time