Lights out Test

by Zhaoliang

HTML

<div id="drawing">

</div>

JavaScript

/*
Zhaoliang Zhang, W5 "Lights Out" Puzzle 

10/20/2018
*/    
    
var draw = SVG('drawing').size(600,600); 

var border = draw.rect(600,600).fill('white').stroke('red');

var isLit1,isLit2, isLit3, isLit4,isLit5, isLit6, isLit7,isLit8, isLit9; 
var light1,light2,light3,light4,light5,light6,light7,light8,light9; 
var feedback; 


// set up the shapes for the lights
light1=draw.circle(100).stroke('black').center(150,200);
light2=draw.circle(100).stroke('black').center(300,200);
light3=draw.circle(100).stroke('black').center(450,200);
light4=draw.circle(100).stroke('black').center(150,350);
light5=draw.circle(100).stroke('black').center(300,350);
light6=draw.circle(100).stroke('black').center(450,350);
light7=draw.circle(100).stroke('black').center(150,500);
light8=draw.circle(100).stroke('black').center(300,500);
light9=draw.circle(100).stroke('black').center(450,500);

// add some instructions for the game
feedback = draw.text("Click on the lights to turn them on and off.\n"+
                     "If you can get all of the lights turned off, you win!").move(30,30);

// set up the button for each light
light1.on('click', toggleLight1);
light2.on('click', toggleLight2);
light3.on('click', toggleLight3);
light4.on('click', toggleLight4);
light5.on('click', toggleLight5);
light6.on('click', toggleLight6);
light7.on('click', toggleLight7);
light8.on('click', toggleLight8);
light9.on('click', toggleLight9);

// initial states for the lights
isLit1 = true;
isLit2 = true;
isLit3 = true;
isLit4 = true;
isLit5 = false;
isLit6 = true;
isLit7 = false;
isLit8 = true;
isLit9 = true;

// for update lightimages 
updateLightImages();


// set up each light from 1-9
function toggleLight1() {
    light1.animate(200).fill('#FAEB31').animate(200).fill('#524F48');
    isLit1 = !isLit1;
    updateLightData();
    updateLightImages();
    checkForWin();
}

function toggleLight2() {
    light2.animate(200).fill('#FAEB31').animate(200).fill('#524F48');
    isLit2 = !isLit2;
   ...