// cube-run.js

var cube_list1 = [
    "images/AdoptDog.png",
    "images/LostDog.png"
];
var cube_list2 = [
    "images/AdoptCat.png",
    "images/LostCat.png"
    
];
var cube_list3 = [
    "images/AdoptOther.png",
    "images/LostOther.png"
];

//function cube2_go (f) {
//    var img = document.getElementById( "cube2_area" );
//    var u1 = f.url1.value;
//    var u2 = f.url2.value;
//    img.src = u1;
//    var cube2 = new Animation.Cube( img, u2 );
//    if ( f.secs.value-0 ) cube2.rotateSeconds = f.secs.value-0;
//    if ( f.minres.value-0 ) cube2.minResolution = f.minres.value-0;
//    if ( f.maxres.value-0 ) cube2.maxResolution = f.maxres.value-0;
//    cube2.clockWise = f.clock.checked ? true : false;
//    cube2.onComplete = function () {
//        if ( u1 == f.url1.value && u2 == f.url2.value ) {
//            f.url1.value = u2;
//            f.url2.value = u1;
//        }
//    };
//    cube2.rotate();
//}
var cube1;
var cube2;
var cube3;
var spins1 = 1;
var spins2 = 1;
var spins3 = 1;
var initSpeed = 5;
function cube_init () {
    cube1 = new Animation.Cube( "imgAdoptDog", cube_list1 );
    cube2 = new Animation.Cube( "imgAdoptCat", cube_list2 );
    cube3 = new Animation.Cube( "imgAdoptOther", cube_list3 );
    cube3.onComplete = function (c) {spin_end()};
//    cube1.onInterval = function (c) {alert("interval="+c)};
    cube1.onInterval = function (c) {count_spins1()};
    cube2.onInterval = function (c) {count_spins2()};
    cube3.onInterval = function (c) {count_spins3()};
    //cube_reverse(cube2);
    //cube3.onInterval = function (c) {cube_stop(cube3)};
    cube1.rotateSeconds = 1/initSpeed;
    cube1.waitSeconds   = 0;
    cube2.rotateSeconds = 1/initSpeed;
    cube2.waitSeconds   = 0;
    cube3.rotateSeconds = 1/initSpeed;
    cube3.waitSeconds   = 0;
}
var iniNo = 1;
var NoSpins = 1;

function count_spins1(){
//    if ((spins1 == iniNo)||(spins1 == iniNo + 2)||(spins1 == iniNo + 3)){
//        cube_slowdown(cube1);
//    }
    if (spins1 == NoSpins){
        cube_stop(cube1);
        spins1 = 1;
        cube1.rotateSeconds = 1/initSpeed;
        return;
    }
    spins1 += 1; 
}
function count_spins2(){
//    if ((spins2 == iniNo)||(spins2 == iniNo + 2)||(spins2 == iniNo + 3)){
//        cube_slowdown(cube2);
//    }
    if (spins2 == NoSpins){
        cube_stop(cube2);
        spins2 = 1;
        cube2.rotateSeconds = 1/initSpeed;
        return;
    }
    spins2 += 1;
    
}
function count_spins3(){
//    if ((spins3 == iniNo)||(spins3 == iniNo + 2)||(spins3 == iniNo + 3)){
//        cube_slowdown(cube3);
//    }
    if (spins3 == NoSpins){
        cube_stop(cube3);
        spins3 = 1;
        cube3.rotateSeconds = 1/initSpeed;
        return;
    }
    spins3 += 1;
    
}
function cube_start () {
    if (!cube1) cube_init();
//    if (!cube2) cube_init();
//    if (!cube3) cube_init();
    cube1.rotate();
    cube2.rotate();
    cube3.rotate();
}
function cube_retry () {
    if ( ! cube1 ) cube_init();
    cube1.rotate();
}
function cube_reverse (cube) {
    if ( ! cube ) cube_init();
    cube.clockWise = ! cube.clockWise;
}
function cube_stop (cube) {
    if ( ! cube ) cube_init();
    cube.finish();
}
function cube_speedup () {
    if ( ! cube1 ) cube_init();
    cube1.rotateSeconds *= 0.5;
}
function cube_slowdown (cube) {
    if ( ! cube ) cube_init();
    cube.rotateSeconds *= 2;
}

