Edit in JSFiddle

// entity.js

(function() {
    
    window.game = {};
   
    window.game.entity = {
        
        distanceTo: function(x, y) {
            return Math.sqrt(Math.pow(x - this.x, 2) +
                             Math.pow(y - this.y, 2));
        },
        
        move: function(x, y) {
            this.x = x;
            this.y = y;
        },
        
        damage: function(amount) {
            this.hp -= amount;
        }
        
    }
    
}());

// player.js

(function() {
    
    function Player(hp, x, y) {
        this.hp = hp;
        this.x = x;
        this.y = y;        
    }
    Player.prototype = window.game.entity;

    window.game.player = new Player(10, 5, 10);

}());

// enemy.js

(function() {

    function Enemy(hp, x, y) {
        this.hp = hp;
        this.x = x;
        this.y = y;        
    }
    Enemy.prototype = window.game.entity;

    window.game.enemy = new Enemy(3, 5, 20);

}());

// crate.js

(function() {

    function Crate(hp, x, y) {
        this.hp = hp;
        this.x = x;
        this.y = y;        
    }
    Crate.prototype = window.game.entity;

    window.game.crate = new Crate(100, 5, 5);

}());