Computercraft变量

我正在 Minecraft 上建造一家银行。

我遇到了保存经过加减运算后的变量的问题。

例如,如果 x="余额",x=15,假设我想从余额中取款:

x = 15 - y(取款金额)

当再次运行程序时,变量没有被保存。

点赞
用户440119
用户440119

如果你希望程序在运行之间保持数据持久性,那么你需要将数据存储在文件中。例如,你可以像这样将变量 x 保存到文件中:

h = fs.open("filename","w")
h.writeLine(x)
h.close()

并且你可以这样加载它:

h = fs.open("filename","r")
x = tonumber(h.readLine())
h.close()

这里是文档:http://computercraft.info/wiki/Fs.open

2013-09-01 02:08:53
用户139885
用户139885

这是一个第一次尝试。我假设账户余额存储在 x 中。然后下面的函数将会从 x 中提取并返回金钱。

-- wa 是要提取的金额
-- 此函数提取最大允许的金额
function withdraw(wa)
    if wa>0 then
        wt=math.min(x,wa)
        if wa <= x then
            x=x-wt
            return wt
        end
    end
    return 0
end

PiL 书中提供了一种更复杂的保持账户的方法:http://www.lua.org/pil/16.html

2013-09-01 02:14:02