JSFiddle - React, Tailwind, and code Playground

by path411

HTML

<textarea id="SaveData"></textarea>
<button id="Save">Save</button><button id="Load">Load</button>

CSS

textarea {
    width:100%;
    height:300px;
}

JavaScript

function Player(data) {
    this.Name = "Mario";
    this.Level = 0;
    this.Speed = 1;
    this.Ammo = 10;
    this.X = 0;
    this.Y = 0;
    
    if(typeof data !== "undefined") {
        for(var prop in data) {
            this[prop] = data[prop];
        }
    }
}

Player.prototype.Jump = function() {
    this.X += this.Speed;
};



(function() {
    
    var player;
    
    function Main() {
        player = new Player();
        BindEvents();
    }
    
    function BindEvents() {
        document.getElementById("Save")
                .addEventListener("click", SavePlayer, false);
        
        document.getElementById("Load")
                .addEventListener("click", LoadPlayer, false);
    }
    
    function SavePlayer() {
        document.getElementById("SaveData").value = JSON.stringify(player);
    }
    
    function LoadPlayer() {
        var playerData = JSON.parse(document.getElementById("SaveData").value);
        player = new Player(playerData);
    }

    Main();
})();