function Player(Character) {
    this.character = Character;
    this.score = document.getElementById("player-score");
    this.controls = [38, 39, 40, 37]; // == Arrow keys
}

Player.prototype.play = function() {
    var player = this;
    var controls = player.controls;

    window.onkeydown = function(e) {
        if (controls.indexOf(e.keyCode) > -1) {
            e.preventDefault();
            player.character.move.direction(e.keyCode);
            player.character.painter.paint();
            player.updateScore();
        }
    };
};

Player.prototype.currentScore = function() {
    return document.getElementsByClassName("painted").length;
}

Player.prototype.updateScore = function() {
    this.score.innerHTML = this.currentScore();
}

Player.prototype.stop = function() {
    controls = this.controls;
    
    window.onkeydown = function(e) {
        if (controls.indexOf(e.keyCode) > -1) {
            return true;
        }
    }
}
@@ -265,16 +265,42 @@
 ontrols;
+%0A    var longPress = true;
 %0A%0A    wi
@@ -381,39 +381,243 @@
 1) %7B
-%0A            e.preventDefault()
+ // == If an arrowkey was pressed.%0A            e.preventDefault(); // == Prevent default behavior.%0A%0A            if (! longPress) %7B // == Disable long press.%0A                return e.keyCode;%0A            %7D%0A%0A            longPress = false
 ;%0A  
@@ -764,14 +764,117 @@
   %7D%0A
-
     %7D;
+%0A%0A    // == Turn long press back on.%0A    window.onkeyup = function(e) %7B%0A        longPress = true;%0A    %7D
 %0A%7D;%0A

Disable holding down arrow keys to move fast.