diff --git a/client.js b/client.js index ab6cf8e3..ed069883 100644 --- a/client.js +++ b/client.js @@ -96,7 +96,7 @@ setInterval(function() { // send our RCON command with whatever we got client.exec("/c remote.call('clusterio', 'importMany', '" + sadas + "')"); } -}, 10000) +}, 3000) /* fs.watch(config.factorioDirectory + "/script-output/orders.txt", "utf8", function(eventType, filename) { diff --git a/create_shortcut.bat b/create_shortcut.bat deleted file mode 100644 index bc653533..00000000 --- a/create_shortcut.bat +++ /dev/null @@ -1,31 +0,0 @@ -@echo off -@cls - -@set /p host="Enter host (default: "127.0.0.1"): " -@if "%host%"=="" set host=127.0.0.1 - -@set /p port="Enter port (default: 25575): " -@if "%port%"=="" set port=25575 - -@set /p passwd="Enter password: " -@if "%passwd%"=="" set passwd= - -set name=connect_%host%-%port% - -@set /p name="Enter shortcut name (default: "%name%.bat"): " -@if "%name%"=="" set name=connect_%host%-%port% - -set command=@mcrcon.exe -t -H %host% -P %port% -p %passwd% - -@echo %command% >> %name%.bat -@echo. -@echo Command: "%command%" -@echo. -@echo Shortcut "%name%.bat" created! -@echo. - -@set "host=" -@set "port=" -@set "passwd=" - -@pause diff --git a/launchEverything.bat b/launchEverything.bat index 33516b3f..f08a766e 100644 --- a/launchEverything.bat +++ b/launchEverything.bat @@ -2,14 +2,4 @@ cd "Factorio_0.13.17" @RD /S /Q "temp" cd "bin/x64/" start factorio.exe --start-server testmap.zip --rcon-port 12345 --rcon-password 123 --server-settings server-settings.json -cd .. -cd .. -cd .. - -::start cmd /C node client.js -::start cmd /C node master.js - -::cd "Factorio 0.13.9 - Copy/bin/x64" -::@start factorio.exe - pause \ No newline at end of file diff --git a/master.js b/master.js index 49b46cd7..6e1bdaf7 100644 --- a/master.js +++ b/master.js @@ -93,6 +93,13 @@ app.get("/inventory", function(req, res) { res.send(docs); }); }); +// endpoint for getting the chartjs library +app.get("/chart.js", function(req, res) { + res.header("Access-Control-Allow-Origin", "*"); + res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); + // Check it and send it + res.end(fs.readFileSync("node_modules/chartjs/chart.js")); +}); var server = app.listen(config.masterPort || 8080, function () { console.log("Listening on port %s...", server.address().port); diff --git a/static/index.html b/static/index.html index 9d55d35e..ae504e47 100644 --- a/static/index.html +++ b/static/index.html @@ -1,7 +1,8 @@ - + Clusterio + @@ -25,6 +26,13 @@

Storage

+ + +
+

Production

+
+ +
\ No newline at end of file diff --git a/static/main.js b/static/main.js index d56bb0dc..21f4256c 100644 --- a/static/main.js +++ b/static/main.js @@ -1,10 +1,25 @@ - contents = { "iron-plate":100, "copper-plate":7312, } +function djb2(str){ + var hash = 5381; + for (var i = 0; i < str.length; i++) { + hash = ((hash << 5) + hash) + str.charCodeAt(i); /* hash * 33 + c */ + } + return hash; +} + +function hashColor(str) { + var hash = djb2(str); + var r = (hash & 0xFF0000) >> 16; + var g = (hash & 0x00FF00) >> 8; + var b = hash & 0x0000FF; + return "#" + ("0" + r.toString(16)).substr(-2) + ("0" + g.toString(16)).substr(-2) + ("0" + b.toString(16)).substr(-2); +} + function drawcontents(data) { keys = Object.keys(data); result = ""; @@ -14,14 +29,43 @@ function drawcontents(data) { result = result + "
" document.getElementById("contents").innerHTML = result; } + setInterval(function() { var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if(xmlhttp.readyState == 4 && xmlhttp.status == 200) { data = JSON.parse(xmlhttp.responseText); drawcontents(data); + // render our piechart with up to date information + piedata = []; + for(i=0;i