From 9d601cb4d6bf3abccfecd2b810c59ba3e64f3300 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20P=C3=A9rez-Cerezo?= Date: Sat, 25 Jun 2016 23:22:36 +0200 Subject: Added interest mechanism --- init.lua | 2 ++ interest.lua | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 interest.lua diff --git a/init.lua b/init.lua index bc1970d..12a828c 100644 --- a/init.lua +++ b/init.lua @@ -1,6 +1,7 @@ atm = {} atm.balance = {} atm.pth = minetest.get_worldpath().."/atm_accounts" +local modpath = minetest.get_modpath("atm") function atm.showform (player) atm.readaccounts() @@ -186,3 +187,4 @@ minetest.register_craft({ {"default:steel_ingot", "default:mese_crystal", "default:steel_ingot"} } }) +dofile(modpath .. "/interest.lua") diff --git a/interest.lua b/interest.lua new file mode 100644 index 0000000..b8f8d0c --- /dev/null +++ b/interest.lua @@ -0,0 +1,16 @@ +-- adapted from the income.lua file from the currency mod. +local timer = 0 +minetest.register_globalstep(function(dtime) + timer = timer + dtime; + if timer >= 3000 then + timer = 0 + atm.readaccounts() + for _,player in ipairs(minetest.get_connected_players()) do + local name = player:get_player_name() + if not (atm.balance[name] == nil) then + atm.balance[name] = math.floor(atm.balance[name] * 1.05) + end + end + atm.saveaccounts() + end +end) -- cgit v1.2.3