//*********************Scene - Initialize When Scene Starts Event******************//
if ($this.scene.state() == "PLAY") { 
    $this.peekSpeed = 100;
    $this.peekDistance = 250;
    $this.points = 0;

    createTimer(2000, $this.activateNinja);
}

$this.activateNinja = function() {
    //pick and find a random ninja
    var randomNumber = random(1,5);
    var chosenNinja = $this.findName("ninja" + randomNumber);

    //activate the chosen ninja and move it up
    chosenNinja.active = true;
    chosenNinja.speedY(-$this.peekSpeed);
};

//*******************ninja Object - Initialize When Scene Starts Event**************//
$this.startingY = $this.y();

$this.stoppingY = $this.startingY - $this.scene.peekDistance; 

//********************ninja Objects - Update Every Frame Event**********************//
if($this.active) { // important that the closing brace is at the very end, otherwise,
    //we'll lose score even when ninja is not active
    //move ninja up if it's active
    moveY($this);


    //if ninja peeks all the way out, start going back down
    if($this.y() <= $this.stoppingY) {
        $this.speedY($this.scene.peekSpeed);
    }

    // stop ninja if it reaches its hiding spot
    // subtract a point, deactivate ninja
    if ($this.y() >= $this.startingY) {
        $this.speedY(0);
        $this.scene.points -= 1;
        score.text($this.scene.points);
        $this.active = false;
    }
}
//***************************ninja Object - Mouse Click Event***********************//
//if ninja is active
if ($this.active) {
    //deactivate
    $this.active = false;

    //move to starting location
    $this.y($this.startingY);

    //increase and update score 
    $this.scene.points += 1;
    score.text($this.scene.points);
}