Inside mining.js我有这样的module.exports:
module.exports = function(io, socket, player) {
...
function generateOre() {
player.iron +=1;
}
...
}
Inside mining.js我需要从其他文件访问其他函数和变量。在woodcutting.js中,我需要这样的mining.js文件:
let mining = require('./mining')(io, socket, player);
在其他文件socket.js中我还需要挖掘和木刻
let mining = require(./mining)(io, socket, player);
let woodcutting = require(./woodcutting)(io, socket, player);
现在当我的另一个函数在mining.js中调用generateOre()时,该函数运行两次。我只想从mining.js访问某些函数和变量。如果不运行两个mining.js实例,怎么做呢? 或者当我要求在两个不同的地方采矿时是否存在问题?
编辑:
在此函数中调用generateOre():
socket.on('increase resource', function () {
clearIntervals();
generatingIron = setInterval( function() { generateOre() }, BASE.ironRequiredTime * calculateMiningPower());
}
在woodcutting.js中,我希望能够调用clearIntervals()来清除所有挖掘间隔。