<!doctype html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

    <title>eco2d web game</title>

    <meta name="title" content="eco2d web game">
    <meta name="description" content="Small C99 2D game engine with a focus on prototyping">
    <meta name="keywords" content="eco2d, html5, ecs, C, librg, chunks">
    <meta name="viewport" content="width=device-width">

    <!-- Open Graph metatags for sharing -->
    <meta property="og:title" content="eco2d web game">
    <meta property="og:image:type" content="image/png">
    <meta property="og:image" content="https://avatars.githubusercontent.com/u/31039603?s=400&u=371f601b81fd4c6843f910b4565a54704caaa374&v=4">
    <meta property="og:site_name" content="zpl.pw">
    <meta property="og:url" content="https://github.com/zpl-c/eco2d">
    <meta property="og:description" content="Small C99 2D game engine with a focus on prototyping">

    <!-- Twitter metatags for sharing -->
    <meta name="twitter:card" content="summary">
    <meta name="twitter:site" content="@DMadarasz">
    <meta name="twitter:title" content="eco2d web game">
    <meta name="twitter:image" content="https://avatars.githubusercontent.com/u/31039603?s=400&u=371f601b81fd4c6843f910b4565a54704caaa374&v=4">
    <meta name="twitter:url" content="https://github.com/zpl-c/eco2d">
    <meta name="twitter:description" content="Small C99 2D game engine with a focus on prototyping">

    <!-- Google tag (gtag.js) -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-R1QS3P3D1T"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());

      gtag('config', 'G-R1QS3P3D1T');
    </script>

    <style>
        html, body { margin: 0px; padding: 0px; background-color: black; width: 100%; height: 100%;}
        canvas.emscripten {
            border: 0px none; background-color: black;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            width: 100%;
            height: 100%;
        }
    </style>
    <script type='text/javascript' src="https://cdn.jsdelivr.net/gh/eligrey/FileSaver.js/dist/FileSaver.min.js"> </script>
    <script type='text/javascript'>
        function saveFileFromMEMFSToDisk(memoryFSname, localFSname)     // This can be called by C/C++ code
        {
            var isSafari = false; // Not supported, navigator.userAgent access is being restricted
            //var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
            var data = FS.readFile(memoryFSname);
            var blob;

            if (isSafari) blob = new Blob([data.buffer], { type: "application/octet-stream" });
            else blob = new Blob([data.buffer], { type: "application/octet-binary" });

            // NOTE: SaveAsDialog is a browser setting. For example, in Google Chrome,
            // in Settings/Advanced/Downloads section you have a setting:
            // 'Ask where to save each file before downloading' - which you can set true/false.
            // If you enable this setting it would always ask you and bring the SaveAsDialog
            saveAs(blob, localFSname);
        }
    </script>
    </head>
    <body>
        <canvas class=emscripten id=canvas oncontextmenu=event.preventDefault() tabindex=-1></canvas>
        <script>
            var Module = {
                print: (function() {
                    return function(text) {
                        if (arguments.length > 1) text = Array.prototype.slice.call(arguments).join(' ');
                        console.log(text);
                    };
                })(),
                printErr: (function() {
                    return function(text) {
                        if (arguments.length > 1) text = Array.prototype.slice.call(arguments).join(' ');
                        console.error(text);
                    };
                })(),
                canvas: (function() {
                    var canvas = document.getElementById('canvas');
                    canvas.width  = window.innerWidth;
                    canvas.height = window.innerHeight;

                    window.addEventListener('resize', () => {
                        canvas.width = window.innerWidth;
                        canvas.height = window.innerHeight;
                    })

                    canvas.addEventListener("webglcontextlost", function(e) { alert('WebGL context lost. You will need to reload the page.'); e.preventDefault(); }, false);

                    return canvas;
                })()
            };
        </script>
        {{{ SCRIPT }}}
    </body>
</html>